JP6275180B2 - 設定情報生成装置、ネットワーク制御装置、方法、及び、プログラム - Google Patents

設定情報生成装置、ネットワーク制御装置、方法、及び、プログラム Download PDF

Info

Publication number
JP6275180B2
JP6275180B2 JP2016059049A JP2016059049A JP6275180B2 JP 6275180 B2 JP6275180 B2 JP 6275180B2 JP 2016059049 A JP2016059049 A JP 2016059049A JP 2016059049 A JP2016059049 A JP 2016059049A JP 6275180 B2 JP6275180 B2 JP 6275180B2
Authority
JP
Japan
Prior art keywords
policy
network
setting information
relay node
communication
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
JP2016059049A
Other languages
English (en)
Other versions
JP2017175373A (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.)
SoftBank Corp
Original Assignee
SoftBank 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 SoftBank Corp filed Critical SoftBank Corp
Priority to JP2016059049A priority Critical patent/JP6275180B2/ja
Publication of JP2017175373A publication Critical patent/JP2017175373A/ja
Application granted granted Critical
Publication of JP6275180B2 publication Critical patent/JP6275180B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、設定情報生成装置、ネットワーク制御装置、方法、及び、プログラムに関する。
GBP(Group Based Policy)を用いて、ソフトウエア定義ネットワーク(SDN:Software Defined Netwok)を構築することが試みられている(例えば、特許文献1、非特許文献1を参照されたい)。GBPでは、エンドポイント(EPと称される場合がある。)をグループ化したエンドポイントグループ(EPGと称される場合がある。)ごとにポリシーを設定する。また、EPG間の通信に関するポリシー(コントラクトと称される場合がある。)を設定する。GBPを利用することで、ネットワーク化されたサービス(アプリケーションと称される場合がある。)を提供するユーザは、EPG間に存在する中継ノードの構成及び設定を意識することなく、アプリケーションを設計することができる。
(先行技術文献)
(特許文献)
(特許文献1)特開2015−204614号公報
(非特許文献)
(非特許文献1)Masashi Kubo、「OpenDaylightがやってきた」、[Online]、2015年4月8日、[2016年2月17日検索]、インターネット(http://www.oracle.co.jp/jdt2015/pdf/7-2.pdf)
GBPでは、アプリケーションに関するポリシーの抜粋(abstract)から、ネットワークに関するポリシーの詳細を導出することで、SDNを容易に構築することを可能にしている。そのため、現在のGBPの枠組みでは、アプリケーションを提供及び利用するするユーザは、ネットワークの中継ノードがアプリケーションに対して提供するサービスの内容を、ソフトウエアで動的に設定したり、変更したりすることができない。
本発明の第1の態様においては、設定情報生成装置が提供される。上記の設定情報装置は、例えば、第1ユーザネットワーク及び第2ユーザネットワークの間を相互接続する中継ネットワークを構成する中継ノードの設定情報を生成する。上記の設定情報装置は、第1ユーザネットワークに適用される第1ネットワークポリシー、第1ユーザネットワークと接続する第1中継ノードに適用されるポリシーであって、第1中継ノードが第1ユーザネットワークに提供するサービスの内容を規定する第1中継ノードポリシー、並びに、第1ユーザネットワーク及び第1中継ノードの間の通信に関する第1通信ポリシーを取得するポリシー取得部を備える。上記の設定情報装置は、第1ネットワークポリシー、第1中継ノードポリシー及び第1通信ポリシーの内容に基づいて、第1中継ノードを制御するための第1設定情報を生成する設定情報生成部を備える。
上記の設定情報生成装置は、第1ユーザネットワークを構成する1以上のノード及び1以上の中継ノードの接続関係を規定するトポロジー情報を取得するトポロジー情報取得部をさらに備えてよい。上記の設定情報生成装置は、トポロジー情報取得部が取得したトポロジー情報に基づいて、1以上の中継ノードの中から第1中継ノードを決定する中継ノード決定部をさらに備えてよい。上記の設定情報生成装置において、トポロジー情報は、トポロジー情報に含まれる1以上の中継ノードの少なくとも1つが、第1中継ノードポリシーが適用される中継ノードのグループに属することを示す情報を含んでよい。上記の設定情報生成装置において、中継ノード決定部は、1以上の中継ノードのうち、グループに属する中継ノードを、第1中継ノードとして決定してよい。
上記の設定情報生成装置において、設定情報は、ソフトウエア定義ネットワーク(SDN:Software Defined Netwok)において、物理的又は仮想的なネットワーク機器を制御するためのコンフィグレーション情報であってよい。上記の設定情報生成装置において、第1ユーザネットワークは、GBP(Group Based Policy)モデルにおけるエンドポイントグループであってよい。上記の設定情報生成装置において、第1中継ノードは、GBPモデルにおけるエンドポイントグループを構成するエンドポイントとして扱われてよい。上記の設定情報生成装置において、第1通信ポリシーは、GBPモデルにおけるコントラクト、又は、コントラクトに含まれるポリシールール若しくはサブジェクトとして扱われてよい。
上記の設定情報生成装置は、複数の第1通信ポリシーのそれぞれと、第1ネットワークポリシー及び第1中継ノードポリシーの組み合わせのそれぞれとを対応付けて格納する通信ポリシー格納部をさらに備えてよい。上記の設定情報生成装置において、ポリシー取得部は、通信ポリシー格納部に格納された情報を参照して、ポリシー取得部が取得した第1ネットワークポリシー及び第1中継ノードポリシーの組み合わせに合致する通信ポリシーを、第1通信ポリシーとして取得してよい。
上記の設定情報生成装置は、中継ネットワークに要求される仕様に関する情報を取得する要求仕様取得部をさらに備えてよい。上記の設定情報生成装置において、通信ポリシー格納部は、複数の第1通信ポリシーのそれぞれと、第1ネットワークポリシー、第1中継ノードポリシー及び中継ネットワークに要求される仕様の組み合わせのそれぞれとを対応付けて格納してよい。上記の設定情報生成装置において、ポリシー取得部は、通信ポリシー格納部に格納された情報を参照して、ポリシー取得部が取得した第1ネットワークポリシー及び第1中継ノードポリシー、並びに、要求仕様取得部が取得した中継ネットワークに要求される仕様の組み合わせに合致する通信ポリシーを、第1通信ポリシーとして取得してよい。
上記の設定情報生成装置は、中継ネットワークに要求される仕様に関する情報を取得する要求仕様取得部をさらに備えてよい。上記の設定情報生成装置において、設定情報生成部は、第1ネットワークポリシー及び第1通信ポリシーの内容、並びに、要求仕様取得部が取得した中継ネットワークに要求される仕様に基づいて、第1設定情報を生成してよい。上記の設定情報生成装置において、第1ユーザネットワークの所有者又は管理者と、中継ネットワークの所有者又は管理者とが異なってもよい。
上記の設定情報生成装置において、ポリシー取得部は、第2ユーザネットワークに適用される第2ネットワークポリシー、第2ユーザネットワークと接続する第2中継ノードに適用されるポリシーであって、第2中継ノードが第2ユーザネットワークに提供するサービスの内容を規定する第2中継ノードポリシー、並びに、第2ユーザネットワーク及び第2中継ノードの間の通信に関する第2通信ポリシーを取得してよい。上記の設定情報生成装置において、設定情報生成部は、第2ネットワークポリシー、第2中継ノードポリシー及び第2通信ポリシーの内容に基づいて、第2中継ノードを制御するための第2設定情報を生成してよい。
本発明の第2の態様においては、ネットワーク制御装置が提供される。上記のネットワーク制御装置は、上記の設定情報生成装置を備える。上記のネットワーク制御装置は、設定情報生成装置が生成した第1設定情報を、第1中継ノードに送信する設定情報送信部を備える。
本発明の第3の態様においては、第1ユーザネットワーク及び第2ユーザネットワークとの間を相互接続する中継ネットワークを構成する複数の中継ノードの少なくとも1つの設定情報を生成する方法が提供される。上記の方法は、複数の中継ノードのうち、第1ユーザネットワークと接続される中継ノードであって、第1ユーザネットワークに第1サービスを提供する中継ノードに適用される第1中継ノードポリシーの適用対象となる第1中継ノードを決定する段階を有する。上記の方法は、第1中継ノードに、第1中継ノードポリシーを適用する段階を有する。上記の方法において、第1ユーザネットワークの所有者又は管理者と、中継ネットワークの所有者又は管理者とが異なってよい。
本発明の第4の態様においては、第1ユーザネットワーク及び第2ユーザネットワークとの間を相互接続する中継ネットワークを構成する中継ノードの設定情報を生成する方法が提供される。上記の方法は、コンピュータが、第1ユーザネットワークに適用される第1ネットワークポリシー、第1ユーザネットワークと接続する第1中継ノードに適用されるポリシーであって、第1中継ノードが第1ユーザネットワークに提供するサービスの内容を規定する第1中継ノードポリシー、並びに、第1ユーザネットワーク及び第1中継ノードの間の通信に関する第1通信ポリシーを取得するポリシー取得段階を有する。上記の方法は、コンピュータが、第1ネットワークポリシー、第1中継ノードポリシー及び第1通信ポリシーの内容に基づいて、第1中継ノードを制御するための第1設定情報を生成する設定情報生成段階を有する。
上記の方法において、設定情報は、ソフトウエア定義ネットワーク(SDN:Software Defined Netwok)において、物理的又は仮想的なネットワーク機器を制御するためのコンフィグレーション情報であってよい。上記の方法において、第1ユーザネットワークは、GBP(Group Based Policy)モデルにおけるエンドポイントグループであってよい。上記の方法において、第1中継ノードは、GBPモデルにおけるエンドポイントグループを構成するエンドポイントとして扱われてよい。上記の方法において、第1通信ポリシーは、GBPモデルにおけるコントラクト、又は、コントラクトに含まれるポリシールール若しくはサブジェクトとして扱われてよい。
本発明の第5の態様においては、コンピュータが、上記の方法により、第1設定情報を生成する段階と、コンピュータが、第1設定情報を生成する段階において生成された第1設定情報を、第1中継ノードに送信する設定情報送信段階とを有する方法が提供される。
本発明の第6の態様においては、プログラムが提供される。上記のプログラムを格納した非一時的な記憶媒体が提供されてもよい。上記のプログラムは、コンピュータを、上記の設定情報生成装置として機能させるためのプログラムであってよい。上記のプログラムは、コンピュータを、上記のネットワーク制御装置として機能させるためのプログラムであってもよい。上記のプログラムは、コンピュータに、上記の方法を実行させるためのプログラムであってもよい。
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
ネットワークサービス提供システム100の一例を概略的に示す。 GBPの概念を中継ノードに拡張した場合の概念図を示す。 SDNコントローラ110の内部構成の一例を概略的に示す。 設計モジュール210の内部構成の一例を概略的に示す。 設定情報生成部350における処理の一例を概略的に示す。 制御モジュール220の内部構成の一例を概略的に示す。 仮想ネットワーク130の設計方法の一例を概略的に示す。 PEルータの設定方法の一例を概略的に示す。
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。なお、図面において、同一または類似の部分には同一の参照番号を付して、重複する説明を省く場合がある。
図1A及び図1Bを用いて、EPG及びGBPの概念を、複数のEPG間を相互接続する中継ネットワークを構成する中継ノードにまで拡張して、SDNを構築するための装置及び方法について説明する。図1Aは、ネットワークサービス提供システム100の一例を概略的に示す。図1Bは、EPG及びGBPの概念を中継ノードに拡張した場合の一例を概略的に示す。
特定のEP群が構成するアプリケーションに関するSDNを、GBPを利用して構築する場合、同一のポリシーが適用されるEPがグループ化され、1以上のEPGが作成される。また、EPG間の接続性を記述したポリシーが作成され、当該EPG間の通信は、当該ポリシーに基づいて管理される。EPG間のポリシーの集合は、コントラクトと称される。例えば、Webサービスを利用する第1EPGと、Webサービスを利用する第2EPGとの間のコントラクトは、EPG間の通信プロトコル、通信方向などに関する事項を記述したポリシーの集合である。GBPを利用したSDNの構築方法は、OpenDayLightプロジェクト、OpenStackプロジェクトなどにより推進されている。
現在のGBPの枠組みにおいては、特定のEPGが他のEPGに対して提供するサービスを実現するために必要であれば、上記の2つのEPG間の中継ノードに対する設定についても、上記の特定のEPGのユーザが、当該中継ノードの設定をソフトウエアで動的に設定したり、変更したりすることができる。しかしながら、中継ノード(又は中継ネットワーク)自体がEPGに対して提供するサービスを実現するために必要な設定に関して、上記のEPGのユーザが、当該中継ノードの設定をソフトウエアで動的に設定したり、変更したりすることはできない。
中継ノード自体がEPGに対して提供するサービスとしては、経路制御に関するサービス、QoS(Quality of Service)に関するサービスなどを例示することができる。経路制御に関するサービスとしては、経路制御にスタティックルーティングを利用するサービス、経路制御にBGP(Border Gateway Protocol)を利用するサービス、経路制御に関するパラメータの値が特定の条件を満足するように制御するサービスなどを例示することができる。経路制御に関するパラメータとしては、MED(Multi Exit Discriminator)属性の値、LP(Local Preference)属性の値、コミュニティ属性の値などを例示することができる。QoSに関するサービスとしては、QoSに関するパラメータの値が特定の条件を満足するように制御するサービスを例示することができる。QoSに関するサービスとしては、帯域保証サービス、優先制御サービス、QoSコードポイント変換サービスなどを例示することができる。
これに対して、本実施形態によれば、EPG及びGBPの概念を、特定のEPG及び他のEPGの間を相互接続する中継ネットワークを構築する中継ノードにまで拡張する。具体的には、本実施形態においては、中継ネットワークを構築する1以上の中継ノードも、EPとして扱われる。そして、上記の1以上の中継ノードを、各中継ノードに適用されるポリシーに基づいてグループ化することで、中継ノードのEPGが作成される。なお、単一の中継ネットワークの中に、中継ノードのEPGとして、2以上のEPGが作成されてもよい。また、単一の中継ノードが、2以上のEPGに属してもよい。
加えて、本実施形態においては、上記の特定のEPGと、上記の中継ノードのEPGとの接続性を記述したポリシーが作成され、当該EPGが、当該中継ノードを通じて他のEPGとの間で行う通信は、当該ポリシーに基づいて管理される。これにより、上記の特定のEPGのユーザは、(i)特定のEPGに含まれるノードと接続する中継ノードが、どのEPGに属するかを指定し、(ii)特定のEPGと、当該中継ノードが属するEPGとの間のポリシー又はコントラクトを作成することで、上記の中継ノードの設定をソフトウエアで動的に設定したり、変更したりすることができる。その結果、上記の特定のEPGのユーザは、中継ノード(又は中継ノード)が上記の特定のEPGに対して提供するサービスの内容を、ソフトウエアで動的に設定したり、変更したりすることができる。
本実施形態において、ネットワークサービス提供システム100は、ポリシーエージェント114と、ポリシーエージェント115と、ポリシーエージェント116と、SDNコントローラ120と、仮想ネットワーク130とを備える。仮想ネットワーク130は、サイト140のサイト内ネットワーク146と、サイト150のサイト内ネットワーク156と、通信ネットワーク160とを含む。
本実施形態において、サイト140のEPGは、サーバ142と、CEルータ144と、サイト内ネットワーク146とを含む。サイト150のEPGは、クライアント端末152と、CEルータ154と、サイト内ネットワーク156とを含む。通信ネットワーク160は、PEルータ162と、PEルータ164と、PEルータ166とを含む。
図1Bに示されるとおり、本実施形態において、PEルータ162及びPEルータ166は、プライマリ用ルータのEPG192に属する。PEルータ164は、バックアップ用ルータのEPG191に属する。なお、本実施形態においては、通信ネットワーク160を構築する中継ノードのEPGは、EPG191及びEPG192に限定されない。他の実施形態によれば、例えば、通信ネットワーク160又は通信ネットワーク160を構成する中継ノードが、サイト140又はサイト150に提供するサービスの種類又は特性ごとに、複数のEPGが形成される。
一実施形態において、通信ネットワーク160が特性の異なる複数のPEルータ(Provider Edge router)を含む場合、PEルータの特性毎に複数のEPGが形成されてよい。PEルータの特性としては、PEルータが提供するサービスの内容、PEルータが対応する通信プロトコルの種類、QoSサービスレベルの種類などを例示することができる。例えば、図1Bに記載された実施形態においては、スタティックルーティングを利用するPEルータのEPG193と、BGPを利用して経路制御するPEルータのEPG194とが形成される。同様に、サイト140のEPG又はサイト150が、特性の異なる複数のCEルータ(Customer Edge router)を含む場合、CEルータの特性ごとに複数のEPGが形成されてもよい。
図1Bにおいて、コントラクト172は、サイト140のEPGと、サイト150のEPGとの間の接続性を記述するポリシーの集合を示す。コントラクト182は、サイト140のEPGと、通信ネットワーク160に関するEPG191との間の接続性を記述するポリシーの集合を示す。コントラクト184は、サイト140のEPGと、通信ネットワーク160に関するEPG192との間の接続性を記述するポリシーの集合を示す。コントラクト186は、サイト150のEPGと、通信ネットワーク160に関するEPG192との間の接続性を記述するポリシーの集合を示す。
ポリシーエージェント116は、設定情報送信部の一例であってよい。SDNコントローラ120は、設定情報生成装置、設定情報送信部、及びネットワーク制御装置の一例であってよい。サイト140のサイト内ネットワーク及びサイト150のサイト内ネットワークは、第1ユーザネットワーク又は第2ユーザネットワークの一例であってよい。サイト140のEPGに適用されるポリシーは、第1ネットワークポリシーの一例であってよい。サイト150のEPGに適用されるポリシーは、第2ネットワークポリシーの一例であってよい。通信ネットワーク160は、中継ネットワークの一例であってよい。PEルータ162、PEルータ164及びPEルータ166は、中継ノード、第1中継ノード又は第2中継ノードの一例であってよい。コントラクト182、コントラクト184及びコントラクト186は、第1通信ポリシー又は第2通信ポリシーの一例であってよい。EPG191、EPG192、EPG193及びEPG194のそれぞれに適用されるポリシーは、第1中継ノードポリシー又は第2中継ノードポリシーの一例であってよい。
次に、ネットワークサービス提供システム100の各部について、具体的に説明する。本実施形態において、ネットワークサービス提供システム100は、物理リソース10を利用して、ネットワークサービスを提供する。ネットワークサービス提供システム100は、物理リソース10を用いて実現される仮想ノード及び仮想リンクを利用して、ネットワークサービスを提供してもよい。
本実施形態において、物理リソース10としては、物理的なコンピューティング資源、物理的なネットワーク資源などを例示することができる。物理的なコンピューティング資源としては、情報処理資源、情報記憶資源などを例示することができる。物理的なネットワーク資源としては、スイッチング資源、ルーティング資源、挿入/分岐資源、無線資源、媒体資源などを例示することができる。媒体資源としては、電気的な媒体資源、光学式の媒体資源、無線リンク及びこれらの組み合わせを例示することができる。
本実施形態において、ポリシーエージェント114は、SDNコントローラ120の指示に基づいて、サイト140に含まれる1以上のノードを制御する。ポリシーエージェント115は、SDNコントローラ120の指示に基づいて、サイト150に含まれる1以上のノードを制御する。ポリシーエージェント115は、サイト150の所有者又は管理者により、所有又は管理されてよい。ポリシーエージェント116と、SDNコントローラ120の指示に基づいて、通信ネットワーク160に含まれる1以上のノードを制御する。
ポリシーエージェント114、ポリシーエージェント115、及び、ポリシーエージェント116は、通信ネットワーク(図示されていない。)を介して物理リソース10にアクセスしてもよい。ポリシーエージェント114、ポリシーエージェント115及びポリシーエージェント116のそれぞれは、サイト140、サイト150及び通信ネットワーク160のそれぞれの所有者又は管理者により、所有又は管理されてよい。通信ネットワーク160の所有者又は管理者は、通信ネットワーク160の主要部分の所有者又は管理者であってもよい。
本実施形態において、SDNコントローラ120は、ソフトウエア命令を使用して、通信ネットワーク(図示されていない。)を介して仮想ネットワーク130を制御する。SDNコントローラ120は、例えば、SDNにおいて物理的又は仮想的なネットワーク機器を制御するための情報を作成し、当該情報を各機器に送信することで、仮想ネットワーク130を制御する。SDNコントローラ120は、ポリシーエージェント114、ポリシーエージェント115又はポリシーエージェント116を介して、物理リソース10にアクセスしてもよい。SDNコントローラ120は、ポリシーエージェント114、ポリシーエージェント115又はポリシーエージェント116を介して、仮想ノードにアクセスしてもよい。
サイト140、サイト150又は通信ネットワーク160のユーザは、例えば、ユーザ端末20を利用して、通信ネットワーク(図示されていない。)を介してSDNコントローラ120にアクセスする。ユーザ端末20は、携帯端末、パーソナルコンピュータ、サーバなどの情報処理装置であってよい。SDNコントローラ120にアクセスしたユーザは、SDNコントローラ120に指示又は情報を入力し、SDNコントローラ120は、ユーザが入力した情報に基づいて、上記のソフトウエア命令を作成する。
SDNコントローラ120の各部は、ハードウェアにより実現されてもよく、ソフトウエアにより実現されてもよく、ハードウェア及びソフトウエアにより実現されてもよい。SDNコントローラ120の各部は、物理的なコンピューティング資源により実現されてもよく、仮想的なコンピューティング資源により実現されてもよく、それらの組み合わせにより実現されてもよい。また、SDNコントローラ120の各部は、一般的な構成の情報処理装置において、SDNコントローラ120の各部の動作を規定したソフトウエア又はプログラムを起動することにより実現されてよい。
SDNコントローラ120として用いられる情報処理装置は、CPU等のプロセッサ、ROM、RAM、通信インタフェースなどを有するデータ処理装置と、キーボード、ポインティングデバイス、タッチパネル、マイク、音声入力システム、ジェスチャー入力システム、位置情報取得システム、各種センサなどの入力装置と、各種ディスプレイ、タッチパネル、スピーカなどの出力装置と、メモリ、HDDなどの記憶装置とを備えてよい。データ処理装置又は記憶装置は、上記のソフトウエア又はプログラムを記憶してよい。上記のソフトウエア又はプログラムは、プロセッサによって実行されることにより、上記の情報処理装置に、当該ソフトウエア又はプログラムによって規定された動作を実行させる。上記のソフトウエア又はプログラムは、非一時的なコンピュータ可読記録媒体に格納されてもよい。
本実施形態において、仮想ネットワーク130は、サーバ142と、クライアント端末152との間で情報を伝達する。仮想ネットワーク130は、物理リソース10の上に構築された論理的なネットワークであってよい。仮想ネットワーク130は、仮想ノード及び仮想リンクを含んでよい。仮想ネットワーク130は、その一部に、物理的な通信ネットワークを含んでもよい。仮想ネットワーク130は、テナントごとに独立した複数の仮想ネットワークを含んでもよい。
本実施形態において、サイト140及びサイト150のそれぞれには、サーバ、仮想サーバ、クライアント端末、パーソナルコンピュータ、携帯端末、ルータ、アクセスポイントなどのエンドポイントが配される。また、サイト140及びサイト150において、複数のエンドポイントを接続するサイト内ネットワーク146及びサイト内ネットワーク156が構築される。サイト140又はサイト内ネットワーク146、及び、サイト150又はサイト内ネットワーク156のそれぞれは、GBPモデルにおけるエンドポイントグループであってよい。
本実施形態において、通信ネットワーク160は、サイト140及びサイト150の間で情報を伝達する。通信ネットワーク160は、物理的な通信ネットワークであってもよく、仮想ネットワークであってもよく、これらの組み合わせであってもよい。物理的な通信ネットワークは、有線通信の伝送路であってもよく、無線通信の伝送路であってもよく、それらの組み合わせであってもよい。通信ネットワーク160の所有者又は管理者は、サイト140又はサイト内ネットワーク146、及び、サイト150又はサイト内ネットワーク156の少なくとも一方の所有者又は管理者と異なってもよい。
PEルータ162及びPEルータ164は、サイト内ネットワーク146のCEルータ144と接続され、サイト内ネットワーク146と、通信ネットワーク160とを接続する。PEルータ166は、サイト内ネットワーク156のCEルータ154と接続され、サイト内ネットワーク156と、通信ネットワーク160とを接続する。
本実施形態によれば、通信ネットワーク160を構成する複数の中継ノードのうち、PEルータ162及びPEルータ166は、プライマリ用ルータのEPG192に属するものとして取り扱う。また、PEルータ164は、バックアップ用ルータのEPG191に属するものとして取り扱う。これにより、PEルータ162及びPEルータ166を、EPG192に適用されるポリシーの適用対象として取り扱うことができる。また、PEルータ164を、EPG191に適用されるポリシーの適用対象として取り扱うことができる。
その結果、例えば、通信ネットワーク160の所有者又は管理者が、サイト140又はサイト内ネットワーク146の所有者又は管理者と異なる場合であっても、サイト140又はサイト内ネットワーク146の所有者又は管理者は、通信ネットワーク160を構成する中継ノードの設定情報を生成することができる。また、SDNコントローラ120が、サイト140のEPG及びサイト150のEPGの間に存在する中継ノードの設定をソフトウエアで動的に設定したり、変更したりすることができるので、マルチベンダ環境におけるネットワーク仮想化を容易に実現することもできる。
本実施形態において、各サイトのノードと接続される中継ノードがPEルータである場合について説明した。しかしながら、中継ノードは、PEルータに限定されない。他の実施形態において、中継ノードは、大容量ルータであってもよく、小規模スイッチであってもよい。中継ノードは、物理的なノードであってもよく、仮想的なノードであってもよい。
図2は、SDNコントローラ120の内部構成の一例を概略的に示す。本実施形態において、SDNコントローラ120は、設計モジュール210と、制御モジュール220と、格納モジュール230とを備える。設計モジュール210は、設定情報生成装置の一例であってよい。制御モジュール220は、設定情報送信部の一例であってよい。格納モジュール230は、通信ポリシー格納部の一例であってよい。なお、SDNコントローラ120の各部の役割分担は厳密なものではなく、SDNコントローラ120の各部における情報処理は、任意に分離又は統合されてよい。
本実施形態において、設計モジュール210は、仮想ネットワーク130を構成するノードの設定情報を生成する。設計モジュール210は、GBPを利用して、仮想ネットワーク130を構成するノードの設定情報を生成してもよい。設定情報は、SDNにおいて、物理的又は仮想的なネットワーク機器を制御するためのコンフィグレーション情報であってよい。設定情報は、ネットワーク機器固有の設定データ、設定データに関する注釈、設定データの生成元となったポリシーなどに関する情報を含んでよい。
一実施形態において、設計モジュール210は、サイト140のEPGに適用されるポリシーの内容と、EPG192に適用されるポリシーの内容と、コントラクト184に含まれるポリシーの内容とに基づいて、PEルータ162を制御するための設定情報を生成する。設計モジュール210は、通信ネットワーク160に関するEPG191を従来のEPGと同様に取り扱うことで、従来と同様の手法により、PEルータ164を制御するための設定情報を生成することができる。
同様に、設計モジュール210は、サイト140のEPGに適用されるポリシーの内容と、EPG191に適用されるポリシーの内容と、コントラクト182に含まれるポリシーの内容とに基づいて、PEルータ164を制御するための設定情報を生成する。また、設計モジュール210は、サイト150のEPGに適用されるポリシーの内容と、EPG192に適用されるポリシーの内容と、コントラクト184に含まれるポリシーの内容とに基づいて、PEルータ166を制御するための設定情報を生成する。各コントラクトに含まれるポリシーの内容は、GBPモデルにおけるコントラクトに含まれるポリシールール(単に、ルールと称する場合がある。)若しくはサブジェクトであってよい。
他の実施形態において、設計モジュール210は、サイト140のEPGに適用されるポリシーの内容と、EPG192に適用されるポリシーの内容と、コントラクト184に含まれるポリシーの内容と、通信ネットワーク160に要求される仕様とに基づいて、PEルータ162を制御するための設定情報を生成する。設計モジュール210は、通信ネットワーク160に要求される仕様を、コントラクト184に含まれるポリシーの内容の一部として取り扱ってよい。例えば、設計モジュール210が、QoSに関するポリシーであって、ベストエフォートの保証値を含むポリシーを利用して設定情報を生成する場合において、ユーザが通信ネットワーク160に要求する仕様に基づいて、ベストエフォートの保証値を決定してよい。これにより、例えば、ユーザは、予め用意されたコントラクト又はポリシーのテンプレートを利用して、設定情報を生成することができる。
通信ネットワーク160に要求される仕様は、通信ネットワーク160のQoS(Quality of Service)に関する要求仕様であってよい。通信ネットワーク160に要求される仕様は、経路制御のプロトコル、経路制御に関するパラメータなどに関するユーザの要求仕様であってもよい。
通信ネットワーク160に要求される仕様は、例えば、ユーザによりシステムに入力される。例えば、ユーザは、通信ネットワーク160に要求される仕様に関する情報を、ユーザ端末20に入力する。ユーザ端末20は、ユーザが入力した情報を設計モジュール210に送信する。これにより、設計モジュール210は、通信ネットワーク160に要求される仕様に関する情報を取得することができる。通信ネットワーク160に要求される仕様は、中継ノード(又は中継ネットワーク)が他のEPGに対して提供するサービスに関する情報の一例であってよい。
同様に、設計モジュール210は、サイト140のEPGに適用されるポリシーの内容と、EPG191に適用されるポリシーの内容と、コントラクト182に含まれるポリシーの内容と、通信ネットワーク160に要求される仕様とに基づいて、PEルータ164を制御するための設定情報を生成する。また、設計モジュール210は、サイト150のEPGに適用されるポリシーの内容と、EPG192に適用されるポリシーの内容と、コントラクト184に含まれるポリシーの内容と、通信ネットワーク160に要求される仕様とに基づいて、PEルータ166を制御するための設定情報を生成する。
本実施形態において、制御モジュール220は、仮想ネットワーク130を制御する。一実施形態において、制御モジュール220は、仮想ネットワーク130を構成するノードのコンフィグレーションを実行する。例えば、制御モジュール220は、設計モジュール210が生成した各PEルータの設定情報を、各PEルータに送信する。これにより、各PEルータのコンフィグレーションを実行することができる。
他の実施形態において、制御モジュール220は、各EPGのポリシー、及び、EPG間の通信に関するポリシー(例えば、各コントラクトである。)を管理する。さらに他の実施形態において、制御モジュール220は、仮想ネットワーク130又はネットワークサービス提供システム100をモニタリングする。制御モジュール220は、モニタリング結果に基づいて、仮想ネットワーク130を制御してもよい。例えば、制御モジュール220は、モニタリング結果に基づいて、設定情報を更新することを決定し、設計モジュール210に、新たな設定情報を生成させる。設計モジュール210は、モニタリング結果を考慮して、新たな設定情報を生成する。制御モジュール220は、新たな設定情報を用いて、各ノードのコンフィグレーションを実行する。
本実施形態において、格納モジュール230は、各種の情報を格納する。例えば、格納モジュール230は、各EPGに適用されるポリシー、及び、EPG間の通信に関するポリシー又はコントラクトを格納する。各ポリシーは、トラフィックのクラスと、当該トラフィックの方向及び当該トラフィックに対するアクションの少なくとも一方とが対応付けられた情報であってよい。
格納モジュール230は、EPGごとに、当該EPGに含まれるエンドポイントの情報、エンドポイント間のトポロジーに関する情報などを格納してもよい。格納モジュール230は、各EPGに含まれるエンドポイントと、他のEPGに含まれるエンドポイントの間のトポロジーに関する情報を格納してもよい。上記のトポロジーに関する情報は、上記の他のEPGに含まれるエンドポイントの少なくとも1つについて、当該エンドポイントが所属するEPGを示す情報又は当該EPGに適用されるポリシーを示す情報を含んでもよい。
格納モジュール230は、設計モジュール210が生成した設定情報を格納してもよい。格納モジュール230は、制御モジュール220による仮想ネットワーク130又はネットワークサービス提供システム100のモニタリング結果に関する情報を格納してもよい。
一実施形態において、格納モジュール230は、第1EPG及び第2EPGの間の通信に関する複数のポリシーのそれぞれと、第1EPGに適用されるポリシー及び第2EPGに適用されるポリシーの組み合わせのそれぞれとを対応付けて格納してよい。例えば、サイト140のEPGに適用されるポリシーとしてA−1及びA−2があり、EPG192に適用されるポリシーとしてB−1及びB−2がある場合、格納モジュール230は、サイト140のEPG及びEPG192の間の通信に関するポリシーとして、A−1とB−1の組み合わせ、A−1とB−2の組み合わせ、A−2とB−1の組み合わせ、並びに、A−2とB−2の組み合わせの4通りの組み合わせのそれぞれに対応するポリシーを格納する。上記の4つのポリシーは、コントラクト184の一部であってよい。
他の実施形態において、格納モジュール230は、通信ネットワーク160に関するEPGと、通信ネットワーク160が提供するサービスを利用するEPGとの間の通信に関する複数のポリシーの少なくとも一部に関して、当該ポリシーの識別情報と、通信ネットワーク160に関するEPGに適用されるポリシー、通信ネットワーク160が提供するサービスを利用するEPGに適用されるポリシー及び通信ネットワーク160に要求される仕様の組み合わせとを対応づけて格納してよい。通信ネットワーク160に関するEPGは、例えば、EPG191、EPG192、EPG193、EPG194などである。通信ネットワーク160が提供するサービスを利用するEPGは、例えば、サイト140のEPG、サイト150のEPGなどである。上記の2つのEPGの間の通信に関する複数のポリシーは、例えば、コントラクト182、コントラクト184又はコントラクト186に含まれる1以上のポリシーである。
これにより、ユーザは、通信ネットワーク160に要求する仕様に応じて、適切なポリシーを容易に選択することができる。例えば、QoSに関して、ユーザが100Mbps以上の帯域保証を要求する場合、設計モジュール210は、予め定義され、格納モジュール230に格納されたポリシーのテンプレートのうち、100Mbps以上の帯域保証を可能にする1以上のテンプレートを抽出する。次に、設計モジュール210は、抽出されたテンプレートのうち、通信ネットワーク160に関するEPGに適用されるポリシー、及び、通信ネットワーク160が提供するサービスを利用するEPGに適用されるポリシーの組み合わせに適合する1以上のテンプレートを抽出する。その後、適切なアルゴリズムにより、実際に適用するテンプレートを決定する。設計モジュール210は、どのテンプレートを利用するかを、ユーザに問い合わせてもよい。
図3は、設計モジュール210の内部構成の一例を概略的に示す。本実施形態において、設計モジュール210は、入力部310と、ポリシー取得部320と、トポロジー情報取得部330と、対象ノード決定部340と、設定情報生成部350とを備える。設計モジュール210の各部は、互いに情報を送受してよい。また、設計モジュール210の各部の役割分担は厳密なものではなく、設計モジュール210の各部における情報処理は、任意に分離又は統合されてよい。入力部310は、要求仕様取得部の一例であってよい。入力部310は、ユーザからの指示を取得するユーザ指示取得部の一例であってもよい。対象ノード決定部340は、中継ノード決定部の一例であってよい。
本実施形態において、入力部310は、ユーザからの指示又は要求を受け付ける。入力部310は、ユーザインターフェースであってよい。これにより、設計モジュール210は、ユーザからの指示又は要求を取得することができる。一実施形態において、入力部310は、通信ネットワーク160に含まれる中継ノードの少なくとも1つについて、当該中継ノードが所属するEPGに関する入力を受け付ける。例えば、ユーザは、トポロジー情報が表示された入力画面を参照しながら、トポロジー情報に含まれる1以上の中継ノードの少なくとも1つについて、当該中継ノードが所属するEPGを指定又は入力する。他の実施形態において、入力部310は、ユーザが、通信ネットワーク160に要求する仕様に関する情報を受け付ける。
本実施形態において、ポリシー取得部320は、各種のポリシーを取得する。例えば、ポリシー取得部320は、サイト140のEPGに適用されるポリシーを取得する。ポリシー取得部320は、サイト150のEPGに適用されるポリシーを取得してもよい。ポリシー取得部320は、サイト140のEPG及びサイト150のEPGの間の通信に関するポリシーを取得してもよい。本実施形態において、ポリシー取得部320は、通信ネットワーク160に関する1以上のEPGのそれぞれに適用されるポリシーを取得する。ポリシー取得部320は、通信ネットワーク160に関するEPGと、通信ネットワーク160が提供するサービスを利用するEPGとの間の通信に関するポリシーを取得してもよい。ポリシー取得部320は、取得されたポリシーに関する情報を設定情報生成部350に送信してよい。
ポリシー取得部320は、格納モジュール230を参照して、特定の条件に合致するポリシーを抽出してもよい。一実施形態によれば、ポリシー取得部320は、まず、格納モジュール230に格納された情報を参照して、サイト140のEPGに適用されるポリシーと、EPG192に適用されるポリシーとを抽出する。次に、ポリシー取得部320は、格納モジュール230に格納されたEPG間の通信に関するポリシーに関する情報を参照して、EPG間の通信に関する複数のポリシーの中から、サイト140のEPGに適用されるポリシー及びEPG192に適用されるポリシーの組み合わせに合致するポリシーを抽出する。
他の実施形態によれば、ポリシー取得部320は、まず、格納モジュール230に格納された情報を参照して、サイト140のEPGに適用されるポリシーと、EPG192に適用されるポリシーとを抽出する。ポリシー取得部320は、次に、格納モジュール230に格納されたEPG間の通信に関するポリシーに関する情報を参照して、EPG間の通信に関する複数のポリシーの中から、サイト140のEPGに適用されるポリシー、EPG192に適用されるポリシー、及び、通信ネットワーク160に要求される仕様の組み合わせに合致するポリシーを抽出する。
本実施形態において、トポロジー情報取得部330は、各サイトのEPGを構成する1以上のノードと、通信ネットワーク160に含まれる1又は複数の中継ノードのうちの少なくとも1つとの接続関係を規定するトポロジー情報を取得する。トポロジー情報取得部330は、格納モジュール230を参照して、上記のトポロジー情報を取得してもよい。トポロジー情報取得部330は、入力部310を介して、ユーザから、上記のトポロジー情報を取得してもよい。トポロジー情報取得部330は、取得されたトポロジー情報を対象ノード決定部340に送信してよい。
例えば、トポロジー情報取得部330は、サイト140のEPGに含まれるサーバ142及びCEルータ144と、通信ネットワーク160に含まれるPEルータ162及びPEルータ164との接続関係を規定するトポロジー情報を取得する。上記のトポロジー情報は、PEルータ162がEPG192に属することを示す情報と、PEルータ164がEPG191に属することを示す情報とを含んでもよい。トポロジー情報取得部330は、サイト150のEPGに含まれるクライアント端末152及びCEルータ154と、通信ネットワーク160に含まれるPEルータ166との接続関係を規定するトポロジー情報を取得してもよい。上記のトポロジー情報は、PEルータ166がEPG192に属することを示す情報を含んでもよい。
本実施形態において、対象ノード決定部340は、通信ネットワーク160を構成する1又は複数の中継ノードのうち、特定のポリシーが適用される中継ノードを決定する。対象ノード決定部340は、通信ネットワーク160を構成する1又は複数の中継ノードのそれぞれについて、各中継ノードに適用されるポリシーを決定してもよい。対象ノード決定部340は、各中継ノードが所属するEPGを決定することにより、特定のポリシーが適用される中継ノードを決定したり、各中継ノードに適用されるポリシーを決定したりしてよい。対象ノード決定部340は、トポロジー情報取得部330が取得したトポロジー情報に基づいて、各中継ノードが所属するEPGを決定してよい。対象ノード決定部340は、決定された中継ノードに関する情報を設定情報生成部350に送信する。
例えば、対象ノード決定部340は、トポロジー情報取得部330が取得したトポロジー情報に基づいて、通信ネットワーク160に含まれる複数の中継ノードの中から、CEルータ144に接続され、サイト内ネットワーク146及び通信ネットワーク160を接続する中継ノードを決定する。次に、対象ノード決定部340は、トポロジー情報取得部330が取得したトポロジー情報に基づいて、サイト内ネットワーク146及び通信ネットワーク160を接続する中継ノードのそれぞれが所属するEPGを決定する。対象ノード決定部340は、サイト内ネットワーク146及び通信ネットワーク160を接続する中継ノードのそれぞれと、各中継ノードが所属するEPGに適用されるポリシーとを対応付けてもよい。
本実施形態において、設定情報生成部350は、各サイトのEPGに適用されるポリシーの内容に基づいて、各サイトのEPGに含まれるエンドポイントの設定情報を生成する。設定情報生成部350は、ポリシー取得部320が取得したポリシーの内容に基づいて、エンドポイントの設定情報を生成してよい。設定情報生成部350は、生成された設定情報を、エンドポイントの識別情報と対応付けて格納モジュール230に格納してよい。
本実施形態によれば、設定情報生成部350は、「通信ネットワーク160に含まれる1以上の中継ノード」及び、「通信ネットワーク160が提供するサービスを利用するエンドポイント」にGBPモデルを適用することで、それぞれのEPGを作成し、各EPGに含まれるエンドポイントの設定情報を生成する。これにより、中継ノード又は通信ネットワーク160が提供するサービスに応じて、当該中継ノードの設定を自動的に設定したり、変更したりすることができる。
一実施形態によれば、設定情報生成部350は、GBPを利用してSDNを構築する分野において公知の方法を用いて、サイト140のEPGに適用されるポリシーと、EPG191に適用されるポリシーと、コントラクト182に含まれるポリシーとに基づいて、PEルータ164の設定情報を生成する。より具体的には、例えば、設定情報生成部350は、まず、ポリシー取得部320から、サイト140のEPGに適用されるポリシーと、EPG191に適用されるポリシーと、コントラクト182とを受け取る。次に、設定情報生成部350は、コントラクト182に含まれる1以上のポリシーを参照して、サイト140のEPGと、EPG191との組み合わせに適用されるポリシーのサブジェクトに対応付けられたルールを抽出する。次に、設定情報生成部350は、抽出されたルールの内容に基づいて、PEルータ164を制御するためのコンフィグレーション情報を生成する。上記のコンフィグレーション情報は、PEルータ164が受信したフローのクラシファイアに基づいて、当該フローを通過させる方向、及び、当該フローに対するアクションなどを規定した情報であってよい。
同様に、設定情報生成部350は、サイト140のEPGに適用されるポリシーと、EPG192に適用されるポリシーと、コントラクト184に含まれるポリシーとに基づいて、PEルータ162の設定情報を生成する。また、設定情報生成部350は、サイト150のEPGに適用されるポリシーと、EPG192に適用されるポリシーと、コントラクト186に含まれるポリシーとに基づいて、PEルータ166の設定情報を生成する。
他の実施形態によれば、設定情報生成部350は、サイト140のEPGに適用されるポリシーと、EPG191に適用されるポリシーと、コントラクト182に含まれるポリシーと、通信ネットワーク160に要求される仕様とに基づいて、PEルータ164を制御するための設定情報を生成する。設定情報生成部350は、同様にして、PEルータ162及びPEルータ166を制御するための設定情報を生成する。
より具体的には、例えば、設定情報生成部350は、まず、ポリシー取得部320から、サイト140のEPGに適用されるポリシーと、EPG191に適用されるポリシーと、コントラクト182とを受け取る。次に、設定情報生成部350は、コントラクト182に含まれる1以上のポリシーの中から、通信ネットワーク160に要求される仕様を満足するポリシーのみを抽出する。次に、設定情報生成部350は、抽出されたポリシーの中から、サイト140のEPGに適用されるポリシーと、EPG191に適用されるポリシーとの組み合わせに合致するポリシーを抽出する。そして、上記の組み合わせに合致するポリシーから、ルールを抽出する。次に、設定情報生成部350は、抽出されたルールの内容に基づいて、PEルータ164を制御するためのコンフィグレーション情報を生成する。
図4は、設定情報生成部350における処理の一例を概略的に示す。本実施形態において、設定情報生成部350は、サイト140に適用されるポリシー440と、EPG191に適用されるポリシー450と、サイト140のEPG及びEPG191の間の接続性を規定するコントラクト460とに基づいて、設定情報480を生成する。本実施形態において、コントラクト460は、サイト間の通信に関する1以上のポリシーを格納する。サイト間の通信に関する1以上のポリシーのそれぞれは、サブジェクト462と、クラシファイア464と、ディレクション466と、アクション468とが対応づけられた情報であってよい。
サブジェクト462は、ポリシーを識別するための識別情報であってよい。サブジェクト462は、ポリシーの名称であってよい。クラシファイア464は、ポリシーの対象となるトラフィックのクラス又は分類を示す情報であってよい。ディレクション466は、ポリシーの対象となるトラフィックがノードを通過することを許可された方向を示す情報であってよい。アクション468は、ポリシーの対象となるトラフィックに対する処理の内容を示す情報であってよい。
本実施形態によれば、設定情報生成部350は、例えば、ポリシー取得部320から、サイト140に適用されるポリシー440と、EPG191に適用されるポリシー450とを取得する。次に、設定情報生成部350は、コントラクト460に含まれる複数のポリシーの中から、ポリシー440及びポリシー450の内容に合致するポリシーを抽出する。その後、設定情報生成部350は、コントラクト460から抽出されたポリシーの内容と、EPG191の内容とに基づいて、PEルータ164の設定情報を生成する。
図4に示された実施形態においては、設定情報生成部350は、コントラクト460に含まれるポリシーの中から、サブジェクト462が「QoS_100M」であるルールを抽出する。その後、設定情報生成部350は、ポリシーの内容を実現することができるように、PEルータ164の設定情報を生成する。例えば、設定情報生成部350は、トラフィックのクラス又は分類に応じて、トラフィックの方向を適切に変更したり、プライマリーキューイング100Mbps又はベストエフォート10Mbpsとして示されるQoSを実現したりすることができるように、PEルータ164の設定情報を生成する。
図5は、制御モジュール220の内部構成の一例を概略的に示す。本実施形態において、制御モジュール220は、設定情報適用部510と、システム監視部520とを備える制御モジュール220の各部は、互いに情報を送受してよい。また、制御モジュール220の各部の役割分担は厳密なものではなく、制御モジュール220の各部における情報処理は、任意に分離又は統合されてよい。設定情報適用部510は、設定情報送信部の一例であってよい。設定情報適用部510は、設定情報をポリシーエージェント経由で送信してもよい。
設定情報適用部510は、仮想ネットワーク130を構成するノードのコンフィグレーションを実行する。例えば、設定情報適用部510は、設計モジュール210が生成した設定情報を、各ノードに送信する。システム監視部520は、仮想ネットワーク130又はネットワークサービス提供システム100をモニタリングする。制御モジュール220は、モニタリング結果に基づいて、設定情報を更新することを決定してもよい。
図6は、設計モジュール210を利用した仮想ネットワーク130の設計方法の一例を概略的に示す。ユーザは、例えば、入力部310を介して、設計モジュール210を操作する。本実施形態によれば、ステップ602(ステップをSと省略する場合がある。)において、ユーザが、まず、サービスを提供するための仮想的な「テナント」を作成する。次に、S604において、ユーザが、テナント内で利用されるVPNを作成する。S606において、ユーザが、テナント内にサイトを作成する。例えば、サイト140及びサイト150を定義する。
次に、S608において、ユーザが、各サイトへのアクセス回線を作成する。ユーザは、各サイト内にCEを配置しアクセス回線の一方と接続する。また、各アクセス回線の他方には、各CEに対応するPEを配置する。さらに、各CEのアドレスを登録する。ユーザは、各CE及び各PEのトポロジー情報を登録してもよい。S610において、設計モジュール210が、各CEのアドレスが登録された段階における各PEの設定情報を生成する。また、設計モジュール210は、各PEのコンフィグレーションを実施する。
次に、S612において、ユーザが、各サイトのサイト内ネットワークを作成する。また、ユーザは、各サイトに含まれるエンドポイントのトポロジー情報を登録する。S614において、設計モジュール210が、各サイトのサイト内ネットワークが作成された段階における各PEの設定情報を生成する。また、設計モジュール210は、各PEのコンフィグレーションを実施する。これにより、仮想ネットワーク130が作成される。
図7は、PEルータの設定方法の一例を概略的に示す。図7は、図6に関連して説明したS610又はS614において、設計モジュール210がPEルータのコンフィグレーションを実施する方法の一例であってよい。
本実施形態によれば、まず、S702において、トポロジー情報取得部330が、仮想ネットワーク130の各ノードの接続関係を規定するトポロジー情報を取得する。トポロジー情報取得部330は、例えば、入力部310が受け付けて、格納モジュール230に格納されたトポロジー情報の中から、仮想ネットワーク130に関連するトポロジー情報を抽出する。これにより、仮想ネットワーク130に含まれる各ノードのトポロジーを決定することができる。
S704において、トポロジー情報に含まれる1以上のエンドポイントをグループ化して、1以上のEPGを作成する。例えば、入力部310が、ユーザからの指示を受け付けて、当該指示に基づいて、エンドポイントをグループ化する。例えば、ユーザは、トポロジー情報が表示された入力画面を参照しながら、トポロジー情報に含まれる1以上のエンドポイントの少なくとも1つについて、当該エンドポイントが所属するEPGを指定又は入力する。これにより、PEルータ162、PEルータ164及びPEルータ166のそれぞれの所属するEPGが決定される。
次に、S706において、各EPGに適用されるポリシーを決定する。例えば、ポリシー取得部320が、各EPGに適用されるポリシーを取得することで、各EPGに適用されるポリシーが決定される。ポリシー取得部320は、各EPGに適用されるポリシーをユーザに問い合わせてもよく、格納モジュール230に格納された情報を参照して、各EPGに適用されるポリシーを取得してもよい。この時、ユーザは、入力部310に通信ネットワーク160に要求する仕様を入力して、ポリシーの内容を編集してもよい。
S708において、EPG間の通信に適用されるポリシーを決定する。例えば、ポリシー取得部320が、作成された複数のEPGの組み合わせの少なくとも1つについて、EPG間の通信に適用されるポリシーを取得する。ポリシー取得部320は、当該EPG間の通信に適用されるポリシーをユーザに問い合わせてもよく、格納モジュール230に格納された情報を参照して、当該EPG間の通信に適用されるポリシーを取得してもよい。この時、ユーザは、入力部310に通信ネットワーク160に要求する仕様を入力して、ポリシーの内容を編集してもよい。
S710において、設定情報生成部350が、PEルータ162、PEルータ164及びPEルータ166のそれぞれを制御するための設定情報を生成する。S712において、設定情報適用部510が、PEルータ162、PEルータ164及びPEルータ166のそれぞれの設定情報を、PEルータ162、PEルータ164及びPEルータ166のそれぞれに送信する。PEルータ162、PEルータ164及びPEルータ166のそれぞれは、各設定情報を受信すると、コンフィグレーションを実行する。
GBPを利用してSDNを設計する場合、従来の手法によれば、サイト140のEPGに適用するポリシーと、サイト150のEPGに適用するポリシーと、サイト140のEPG及びサイト150のEPGとの間の通信に関するコントラクトとに基づいて、各サイトに含まれる各エンドポイントの設定情報を生成する。このとき、通信ネットワーク160に含まれるPEルータ162、PEルータ164及びPEルータ166の設定のうち、サイト140のEPGがサイト150のEPGに提供するサービス、又は、サイト150のEPGがサイト140のEPGに提供するサービスに関係のある設定についても、設定情報が生成される。
しかしながら、通信ネットワーク160に含まれるPEルータ162、PEルータ164及びPEルータ166は、サイト140及びサイト150の間に介在して、両者の間で情報を伝達する要素であることから、従来のGBPでは、PEルータ162、PEルータ164又はPEルータ166がサイト140又はサイト150に提供するサービスに関する設定については、設定情報を生成することができなかった。そのため、PEルータおける経路制御、QoSなどの設定を自動的に設定したり、変更したりすることができなかった。
これに対して、本実施形態によれば、通信ネットワーク160に含まれる1以上の中継ノードをエンドポイントとして取り扱い、1以上の中継ノードを、各中継ノードに適用されるポリシーに基づいて、1以上のEPGにグループ化する。上記のポリシーは、例えば、EPGが提供するサービスの内容、EPG内の通信規格に基づいて決定される。また、本実施形態においては、中継ノードからなるEPGと、当該EPGが提供するサービスを利用するEPGとの間のコントラクトが作成される。これにより、従来のGBPを利用した設計手法と同様の手法を用いて、各EPGに所属する中継ノードが提供するサービスの設定情報を生成することができる。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。また、技術的に矛盾しない範囲において、特定の実施形態について説明した事項を、他の実施形態に適用することができる。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
10 物理リソース、20 ユーザ端末、100 ネットワークサービス提供システム、110 SDNコントローラ、114 ポリシーエージェント、115 ポリシーエージェント、116 ポリシーエージェント、120 SDNコントローラ、130 仮想ネットワーク、140 サイト、142 サーバ、144 CEルータ、146 サイト内ネットワーク、150 サイト、152 クライアント端末、154 CEルータ、156 サイト内ネットワーク、160 通信ネットワーク、162 PEルータ、164 PEルータ、166 PEルータ、172 コントラクト、182 コントラクト、184 コントラクト、186 コントラクト、191 EPG、192 EPG、193 EPG、194 EPG、210 設計モジュール、220 制御モジュール、230 格納モジュール、310 入力部、320 ポリシー取得部、330 トポロジー情報取得部、340 対象ノード決定部、350 設定情報生成部、440 ポリシー、450 ポリシー、460 コントラクト、462 サブジェクト、464 クラシファイア、466 ディレクション、468 アクション、480 設定情報、510 設定情報適用部、520 システム監視部

Claims (14)

  1. 第1ユーザネットワーク及び第2ユーザネットワークの間を相互接続する中継ネットワークを構成する中継ノードの設定情報を生成する設定情報生成装置であって、
    前記第1ユーザネットワークに適用される第1ネットワークポリシー、前記第1ユーザネットワークと接続する第1中継ノードに適用されるポリシーであって、前記第1中継ノードが前記第1ユーザネットワークに提供するサービスの内容を規定する第1中継ノードポリシー、並びに、前記第1ユーザネットワーク及び前記第1中継ノードの間の通信に関する第1通信ポリシーを取得するポリシー取得部と、
    前記第1ネットワークポリシー、前記第1中継ノードポリシー及び前記第1通信ポリシーの内容に基づいて、前記第1中継ノードを制御するための第1設定情報を生成する設定情報生成部と、
    を備え、
    前記設定情報は、ソフトウエア定義ネットワーク(SDN:Software Defined Netwok)において、物理的又は仮想的なネットワーク機器を制御するためのコンフィグレーション情報であり、
    前記第1ユーザネットワークは、GBP(Group Based Policy)モデルにおけるエンドポイントグループであり、
    前記第1中継ノードは、GBPモデルにおけるエンドポイントグループを構成するエンドポイントとして扱われ、
    前記第1通信ポリシーは、GBPモデルにおけるコントラクト、又は、前記コントラクトに含まれるポリシールール若しくはサブジェクトとして扱われる、
    設定情報生成装置。
  2. 前記第1ユーザネットワークを構成する1以上のノード及び1以上の前記中継ノードの接続関係を規定するトポロジー情報を取得するトポロジー情報取得部と、
    前記トポロジー情報取得部が取得した前記トポロジー情報に基づいて、前記1以上の中継ノードの中から前記第1中継ノードを決定する中継ノード決定部と、
    をさらに備える、
    請求項1に記載の設定情報生成装置。
  3. 前記トポロジー情報は、前記トポロジー情報に含まれる前記1以上の中継ノードの少なくとも1つが、前記第1中継ノードポリシーが適用される中継ノードのグループに属することを示す情報を含み、
    前記中継ノード決定部は、前記1以上の中継ノードのうち、前記グループに属する中継ノードを、前記第1中継ノードとして決定する、
    請求項2に記載の設定情報生成装置。
  4. 複数の前記第1通信ポリシーのそれぞれと、前記第1ネットワークポリシー及び前記第1中継ノードポリシーの組み合わせのそれぞれとを対応付けて格納する通信ポリシー格納部をさらに備え、
    前記ポリシー取得部は、前記通信ポリシー格納部に格納された情報を参照して、前記ポリシー取得部が取得した前記第1ネットワークポリシー及び前記第1中継ノードポリシーの組み合わせに合致する通信ポリシーを、前記第1通信ポリシーとして取得する、
    請求項1から請求項までの何れか一項に記載の設定情報生成装置。
  5. 前記中継ネットワークに要求される仕様に関する情報を取得する要求仕様取得部をさらに備え、
    前記通信ポリシー格納部は、前記複数の第1通信ポリシーのそれぞれと、前記第1ネットワークポリシー、前記第1中継ノードポリシー及び前記中継ネットワークに要求される仕様の組み合わせのそれぞれとを対応付けて格納し、
    前記ポリシー取得部は、前記通信ポリシー格納部に格納された情報を参照して、前記ポリシー取得部が取得した前記第1ネットワークポリシー及び前記第1中継ノードポリシー、並びに、前記要求仕様取得部が取得した前記中継ネットワークに要求される仕様の組み合わせに合致する通信ポリシーを、前記第1通信ポリシーとして取得する、
    請求項に記載の設定情報生成装置。
  6. 前記中継ネットワークに要求される仕様に関する情報を取得する要求仕様取得部をさらに備え、
    前記設定情報生成部は、前記第1ネットワークポリシー及び前記第1通信ポリシーの内容、並びに、前記要求仕様取得部が取得した前記中継ネットワークに要求される仕様に基づいて、前記第1設定情報を生成する、
    請求項1から請求項までの何れか一項に記載の設定情報生成装置。
  7. 前記第1ユーザネットワークの所有者又は管理者と、前記中継ネットワークの所有者又は管理者とが異なる、
    請求項1から請求項までの何れか一項に記載の設定情報生成装置。
  8. 前記ポリシー取得部は、前記第2ユーザネットワークに適用される第2ネットワークポリシー、前記第2ユーザネットワークと接続する第2中継ノードに適用されるポリシーであって、前記第2中継ノードが前記第2ユーザネットワークに提供するサービスの内容を規定する第2中継ノードポリシー、並びに、前記第2ユーザネットワーク及び前記第2中継ノードの間の通信に関する第2通信ポリシーを取得し、
    前記設定情報生成部は、前記第2ネットワークポリシー、前記第2中継ノードポリシー及び前記第2通信ポリシーの内容に基づいて、前記第2中継ノードを制御するための第2設定情報を生成する、
    請求項1から請求項までの何れか一項に記載の設定情報生成装置。
  9. 請求項1から請求項までの何れか一項に記載の設定情報生成装置と、
    前記設定情報生成装置が生成した前記第1設定情報を、前記第1中継ノードに送信する設定情報送信部と、
    を備える、ネットワーク制御装置。
  10. 第1ユーザネットワーク及び第2ユーザネットワークとの間を相互接続する中継ネットワークを構成する中継ノードの設定情報を生成する方法であって、
    コンピュータが、前記第1ユーザネットワークに適用される第1ネットワークポリシー、前記第1ユーザネットワークと接続する第1中継ノードに適用されるポリシーであって、前記第1中継ノードが前記第1ユーザネットワークに提供するサービスの内容を規定する第1中継ノードポリシー、並びに、前記第1ユーザネットワーク及び前記第1中継ノードの間の通信に関する第1通信ポリシーを取得するポリシー取得段階と、
    コンピュータが、前記第1ネットワークポリシー、前記第1中継ノードポリシー及び前記第1通信ポリシーの内容に基づいて、前記第1中継ノードを制御するための第1設定情報を生成する設定情報生成段階と、
    を有し、
    前記設定情報は、ソフトウエア定義ネットワーク(SDN:Software Defined Netwok)において、物理的又は仮想的なネットワーク機器を制御するためのコンフィグレーション情報であり、
    前記第1ユーザネットワークは、GBP(Group Based Policy)モデルにおけるエンドポイントグループであり、
    前記第1中継ノードは、GBPモデルにおけるエンドポイントグループを構成するエンドポイントとして扱われ、
    前記第1通信ポリシーは、GBPモデルにおけるコントラクト、又は、前記コントラクトに含まれるポリシールール若しくはサブジェクトとして扱われる、
    方法。
  11. コンピュータが、請求項10に記載の方法により、前記第1設定情報を生成する段階と、
    コンピュータが、前記第1設定情報を生成する段階において生成された前記第1設定情報を、前記第1中継ノードに送信する設定情報送信段階と、
    を有する、方法。
  12. コンピュータを、請求項1から請求項までの何れか一項に記載の設定情報生成装置として機能させるためのプログラム。
  13. コンピュータを、請求項に記載のネットワーク制御装置として機能させるためのプログラム。
  14. コンピュータに、請求項10又は請求項11に記載の方法を実行させるためのプログラム。
JP2016059049A 2016-03-23 2016-03-23 設定情報生成装置、ネットワーク制御装置、方法、及び、プログラム Active JP6275180B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016059049A JP6275180B2 (ja) 2016-03-23 2016-03-23 設定情報生成装置、ネットワーク制御装置、方法、及び、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016059049A JP6275180B2 (ja) 2016-03-23 2016-03-23 設定情報生成装置、ネットワーク制御装置、方法、及び、プログラム

Publications (2)

Publication Number Publication Date
JP2017175373A JP2017175373A (ja) 2017-09-28
JP6275180B2 true JP6275180B2 (ja) 2018-02-07

Family

ID=59972361

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016059049A Active JP6275180B2 (ja) 2016-03-23 2016-03-23 設定情報生成装置、ネットワーク制御装置、方法、及び、プログラム

Country Status (1)

Country Link
JP (1) JP6275180B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102548430B1 (ko) * 2018-07-03 2023-06-26 주식회사 케이티 종단 간 통신의 정책을 설정하는 장치 및 방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3636948B2 (ja) * 1999-10-05 2005-04-06 株式会社日立製作所 ネットワークシステム
JP4346815B2 (ja) * 2000-12-28 2009-10-21 三菱電機株式会社 ネットワーク設定管理装置及びネットワークシステム並びにネットワーク設定管理方法
JPWO2005034446A1 (ja) * 2003-10-03 2006-12-14 富士通株式会社 ポリシールール適用ネットワークシステム
US10135687B2 (en) * 2014-01-06 2018-11-20 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Virtual group policy based filtering within an overlay network
US9548897B2 (en) * 2014-01-17 2017-01-17 Amazon Technologies, Inc. Network entity registry for network entity handles included in network traffic policies enforced for a provider network

Also Published As

Publication number Publication date
JP2017175373A (ja) 2017-09-28

Similar Documents

Publication Publication Date Title
US9654395B2 (en) SDN-based service chaining system
US10003540B2 (en) Flow forwarding method, device, and system
US20160301603A1 (en) Integrated routing method based on software-defined network and system thereof
US10965649B2 (en) Persistent data communication sessions across WAN
ES2834031T3 (es) Una red orquestada impulsada por datos mediante un controlador SDN distribuido ligero activado por voz
US9917729B2 (en) Methods, systems, and computer readable media for multi-layer orchestration in software defined networks (SDNs)
EP3057282B1 (en) Network flow control device, and security strategy configuration method and device thereof
CN111258627B (zh) 一种接口文档生成方法和装置
JP2012533253A (ja) 少なくとも1つの仮想ネットワークをオンザフライかつオンデマンドでデプロイする方法及びシステム
CN112491707B (zh) 一种转发路径的确定方法及装置
EP3544241B1 (en) Method and apparatus for deploying service in virtualized network
WO2016115836A1 (zh) 路由状态和/或策略信息的处理方法及装置
CN107181691B (zh) 一种网络中实现报文路由的方法、设备和系统
WO2019184653A1 (zh) 链路配置方法和控制器
JP2010004426A (ja) 通信システムおよびサーバ装置
KR101527377B1 (ko) Sdn 기반의 서비스 체이닝 시스템
KR101746105B1 (ko) 서비스 체이닝이 가능한 오픈플로우 스위치
US9912592B2 (en) Troubleshooting openflow networks
JP6275180B2 (ja) 設定情報生成装置、ネットワーク制御装置、方法、及び、プログラム
US9967194B2 (en) Network control system, control device, network information management method, and storage
KR102385707B1 (ko) 호스트 추상화를 이용한 sdn 네트워크 시스템 및 그 구현방법
KR101739100B1 (ko) 서비스 체이닝 가능한 오픈플로우 스위치 제어 방법 및 그 제어기
KR101739097B1 (ko) 오픈플로우 스위치의 서비스 체이닝 방법
US20240007364A1 (en) Method, Apparatus, and System for Deploying Service
Lehocine et al. VINEMA: Towards automated management of virtual networks in SDN infrastructures

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170825

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170912

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171110

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180109

R150 Certificate of patent or registration of utility model

Ref document number: 6275180

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250