JP6565914B2 - 通信制御装置、通信システム、通信制御方法および通信制御用プログラム - Google Patents

通信制御装置、通信システム、通信制御方法および通信制御用プログラム Download PDF

Info

Publication number
JP6565914B2
JP6565914B2 JP2016534281A JP2016534281A JP6565914B2 JP 6565914 B2 JP6565914 B2 JP 6565914B2 JP 2016534281 A JP2016534281 A JP 2016534281A JP 2016534281 A JP2016534281 A JP 2016534281A JP 6565914 B2 JP6565914 B2 JP 6565914B2
Authority
JP
Japan
Prior art keywords
network
core node
flow
aggregation
topology
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
JP2016534281A
Other languages
English (en)
Other versions
JPWO2016009642A1 (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.)
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
Publication of JPWO2016009642A1 publication Critical patent/JPWO2016009642A1/ja
Application granted granted Critical
Publication of JP6565914B2 publication Critical patent/JP6565914B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • H04L49/254Centralised controller, i.e. arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/18End to end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、複数の通信装置を制御する通信制御装置、通信システム、通信制御方法および通信制御用プログラムに関する。
近年、オープンフロー(OpenFlow)という技術が提案されている(非特許文献1、2参照)。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散および最適化を行うものである。
非特許文献2に仕様化されているオープンフロースイッチは、オープンフローコントローラとの通信用のセキュアチャネルを備え、オープンフローコントローラから適宜追加または書き換え指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合するマッチ条件(Match Fields)と、フロー統計情報(Counters)と、処理内容を定義したインストラクション(Instructions)との組が定義される(非特許文献2の「4.1 Flow Table」の項参照)。
例えば、オープンフロースイッチは、パケットを受信すると、フローテーブルから、受信パケットのヘッダ情報に適合するマッチ条件(非特許文献2の「4.3 Match Fields」参照)を含むエントリを検索する。検索の結果、受信パケットに適合するエントリが見つかった場合、オープンフロースイッチは、フロー統計情報(カウンタ)を更新する。併せて、オープンフロースイッチは、受信パケットに対して、そのエントリのインストラクションフィールドに記述された処理内容(指定ポートからのパケット送信、フラッディング、廃棄等)を実施する。
一方、検索の結果、受信パケットに適合するエントリが見つからなかった場合、オープンフロースイッチは、セキュアチャネルを介して、オープンフローコントローラに対してエントリ設定の要求を行う。すなわち、この場合、オープンフロースイッチは、受信パケットを処理するための制御情報の送信要求(Packet-In メッセージ)をオープンフローコントローラに対して送信する。
オープンフロースイッチは、処理内容が定められたフローエントリを受け取ってフローテーブルを更新する。このように、オープンフロースイッチは、フローテーブルに格納されたエントリを制御情報として用いてパケット転送を行う。
図18は、オープンフローを用いた一般的なネットワーク構成を示す説明図である。図18に示すコアノード102がオープンフロースイッチに対応し、制御装置101がオープンフローコントローラに対応する。
コアノード102は、通信リンク104を介して互いに接続されており、一部のノードにはエッジノード105が接続されている。ここで、エッジノード105は、オープンフローネットワークにおける通信の始点であり、ルータ等の通信仲介装置である。各コアノード102は、セキュアチャネル103を介して制御装置101に接続され、フローの設定やPacket-In メッセージは、このセキュアチャネル103上で通信される。
このように、オープンフローを用いることでネットワーク内の通信をコントローラで集中制御することが可能になる。一方、ノード数が数万といった複雑な通信ネットワークをオープンフローで制御するため、通信ネットワークを集約化して単純にする方法が非特許文献3に記載されている。
図19は、オープンフローを用いて通信ネットワークを集約化した構成を示す説明図である。図19に示す例では、コアノード102と制御装置201が直接には接続されず、両装置の間に集約化装置202が介在する。集約化装置202が、制御装置201によって設定されるフローや、コアノード102から通知されるPacket-In メッセージを変換することで、制御装置201は、あたかも一つのノードから成る通信ネットワークを制御しているかのように振る舞うことができる。
なお、図19に例示する通信ネットワークでは、各コアノード102が、セキュアチャネル204を介して集約化装置202に接続される。また、集約化装置202は、セキュアチャネル203を介して制御装置201に接続される。
また、図20は、通信ネットワークを集約化した場合の概念を示す説明図である。図20に示す通信ネットワーク301は、各々1台のエッジノードが接続された4つのコアノードを含む。この4つのコアノードを1つのコアノード303に集約することで、集約後の通信ネットワーク302は、4つのエッジノードに接続された1台のコアノード303を含むものとみなすことができる。
このように、通信ネットワークの集約化を行うことにより、制御装置は、一のノードのみ制御対象にすればよくなるため、フローの設定やPacket-In メッセージの処理を単純なロジックで実現できるようになる。
一方で、信頼性が求められる通信ネットワークにおいては、耐障害性向上のために通信ネットワークの冗長化を行うことが一般的に行われている。冗長化の手法には、ノード単位の多重化やリンク単位の多重化など、目的に応じた様々な手法が存在する。特に、サービスの停止が許されないような高い信頼性が求められる通信ネットワークにおいては、大規模な障害の発生時にも通信を維持できるように、稼動系と待機系の二系統の通信ネットワークが用意され、障害発生時に切り替えて利用することが行われる。
図21は、稼動系と待機系の二系統で冗長化した通信ネットワークの構成を示す説明図である。図21に示す通信ネットワークは、稼動系ネットワーク401と待機系ネットワーク402を含む。コアノードを含む各ネットワークは、トポロジが同一である。エッジノード404およびエッジノード405は、稼動系ネットワーク401と待機系ネットワーク402の両方に接続されている。
平常時、エッジノード間の通信は、稼動系ネットワーク401のみを利用して行われる。もし、稼動系ネットワーク401の内部で、リンクの切断など、通信に影響を及ぼすような障害が発生した場合、コアノード間の経路情報が変更され、エッジノード間の通信は、待機系ネットワーク402に切り替えられる。このようにすることで、障害が発生した場合に、通信ネットワークサービスを継続させることができる。
また、特許文献1には、ネットワーク上のノードを仮想化してパケットを転送する通信システムが記載されている。特許文献1に記載された通信システムでは、制御装置が複数の通信ノードを仮想化した仮想ノードを生成し、自身が管理する通信ノードに対して処理規則を設定する。また、各制御装置は、自身の管理するドメインを上位ドメインに含まれるドメインノードとして仮想化する。また、特許文献1に記載された通信システムでは、制御装置の仮想化管理部が、複数の下位ドメインを1つの上位ドメインノードとして制御する。
また、特許文献2には、相互にフローの確立を要求できる複数の通信ノードと、フローによる経路を制御できる複数のスイッチとを有する通信ネットワークが記載されている。特許文献2に記載された通信ネットワークでは、複数のネットワーク経路の集合から最適な単一のネットワーク経路が決定される。
具体的には、特許文献2に記載された通信ネットワークでは、パケットが通過しなければならないスイッチの集合が定義され、そのスイッチを通過させるようなネットワーク経路の集合が事前に計算される。そして、計算されたネットワーク経路の集合から、エネルギー効率が最適な単一のネットワーク経路が決定される。
国際公開第2012/108382号 特表2013−500654号公報
Nick McKeown他7名、"OpenFlow:Enabling Innovation in Campus Networks"、[online]、[平成25(2013)年9月18日検索]、インターネット〈URL:http://www.openflow.org/documents/openflow-wp-latest.pdf〉 "OpenFlow Switch Specification" Version 1.1.0 Implemented (Wire Protocol 0x02)、[online]、[平成25(2013)年9月18日検索]、インターネット〈URL:http://www.openflow.org/documents/openflow-spec-v1.1.0.pdf〉 芦田優太、小出俊夫、下西英之、「OpenFlowネットワークにおけるドメイン縮約を用いた階層型ネットワーク構築手法の提案」、信学技報, vol.112、No.10、CQ2012-7、pp.35-40、2012年4月
上述するように、通信ネットワークの制御を簡易化するためには、通信ネットワークを集約化することが好ましい。一方、通信ネットワークの信頼性を向上させるためには、通信ネットワークを冗長化させることが求められる。
通信ネットワークを集約化する場合、単一の通信ネットワークに含まれるすべてのノードを一つの仮想的なネットワークとする。一方、通信ネットワークを冗長化する場合、非連結の独立した通信ネットワークを複数用意して、両方の通信ネットワークを切り替える。このように、集約化と冗長化では、想定する通信ネットワークの構成が一般に異なるため、単純に組み合わせることは困難である。
特許文献1に記載された通信システムでは、仮想化されたドメインによるトポロジを利用することで、パケット転送のための経路を簡易に計算することは可能である。しかし、特許文献1に記載された通信システムでは、通信経路がトポロジに基づいて決定されるため、冗長化された複数の通信ノードを有するネットワークの経路を、状況に応じて適切に選択することは困難である。
また、特許文献2に記載された通信ネットワークでは、通信経路が予め定められており、障害などの状況に応じて通信ネットワークの経路を動的に制御することは困難である。
そこで、本発明は、複数の通信装置を含む通信ネットワークにおいて、各通信装置への制御を簡易化しつつ、通信ネットワークの信頼性を向上させることができる通信制御装置、通信システム、通信制御方法および通信制御用プログラムを提供することを目的とする。
本発明による通信制御装置は、規定されたフローに応じて受信したパケットを処理するコアノードと、コアノードを制御する制御装置との間に接続され、1台以上のコアノードを集約した集約ネットワーク内に存在する各コアノードを制御する通信制御装置であって、集約ネットワーク内のコアノードから受信する通知をその集約ネットワークからの通知に変換して制御装置へ送信し、制御装置から受信する集約ネットワークに対する通知を集約ネットワーク内の各コアノードに対する通知に変換してそのコアノードに送信する通信制御部と、集約ネットワーク内のコアノードの接続関係、および、集約ネットワーク内のコアノードがその集約ネットワーク外の装置に接続されるポートである実ポートとその実ポートを有するコアノードである実ノードとを特定する情報を、集約ネットワークごとに記憶するトポロジ変換情報記憶部と、トポロジ変換情報記憶部に記憶される情報を、集約ネットワーク単位で更新するトポロジ更新部とを備え、通信制御部が、トポロジ変換情報記憶部に記憶された情報に基づいて、制御装置から受信する集約ネットワークに対して規定された集約化フローを、集約ネットワーク内のコアノードごとに規定される実フローに変換することを特徴とする。
本発明による通信システムは、規定されたフローに応じて受信したパケットを処理するコアノードと、コアノードを制御する制御装置とコアノードとの間に接続され、1台以上のコアノードを集約した集約ネットワーク内に存在する各コアノードを制御する通信制御装置とを備え、通信制御装置が、集約ネットワーク内のコアノードから受信する通知をその集約ネットワークからの通知に変換して制御装置へ送信し、制御装置から受信する集約ネットワークに対する通知を集約ネットワーク内の各コアノードに対する通知に変換してそのコアノードに送信する通信制御部と、集約ネットワーク内のコアノードの接続関係、および、集約ネットワーク内のコアノードがその集約ネットワーク外の装置に接続されるポートである実ポートとその実ポートを有するコアノードである実ノードとを特定する情報を、集約ネットワークごとに記憶するトポロジ変換情報記憶部と、トポロジ変換情報記憶部に記憶される情報を、集約ネットワーク単位で更新するトポロジ更新部とを含み、通信制御部が、トポロジ変換情報記憶部に記憶された情報に基づいて、制御装置から受信する集約ネットワークに対して規定された集約化フローを、集約ネットワーク内のコアノードごとに規定される実フローに変換することを特徴とする。
本発明による通信制御方法は、1台以上のコアノードを集約した集約ネットワーク内に存在する各コアノードを制御する通信制御方法であって、集約ネットワーク内のコアノードから受信する通知をその集約ネットワークからの通知に変換して制御装置へ送信し、制御装置から受信する集約ネットワークに対する通知を集約ネットワーク内の各コアノードに対する通知に変換してそのコアノードに送信し、集約ネットワーク内のコアノードの接続関係、および、集約ネットワーク内のコアノードがその集約ネットワーク外の装置に接続されるポートである実ポートとその実ポートを有するコアノードである実ノードとを特定する情報を、集約ネットワークごとに記憶するトポロジ変換情報記憶部の情報を、集約ネットワーク単位で更新し、トポロジ変換情報記憶部に記憶された情報に基づいて、制御装置から受信する集約ネットワークに対して規定された集約化フローを、集約ネットワーク内のコアノードごとに規定される実フローに変換することを特徴とする。
本発明による通信制御用プログラムは、規定されたフローに応じて受信したパケットを処理するコアノードと、コアノードを制御する制御装置との間に接続され、1台以上のコアノードを集約した集約ネットワーク内に存在する各コアノードを制御するコンピュータに適用される通信制御用プログラムであって、コンピュータに、集約ネットワーク内のコアノードから受信する通知をその集約ネットワークからの通知に変換して制御装置へ送信し、制御装置から受信する集約ネットワークに対する通知を集約ネットワーク内の各コアノードに対する通知に変換してそのコアノードに送信する通信制御処理、および、集約ネットワーク内のコアノードの接続関係、および、集約ネットワーク内のコアノードがその集約ネットワーク外の装置に接続されるポートである実ポートとその実ポートを有するコアノードである実ノードとを特定する情報を、集約ネットワークごとに記憶するトポロジ変換情報記憶部の情報を、集約ネットワーク単位で更新するトポロジ更新処理を実行させ、通信制御処理で、トポロジ変換情報記憶部に記憶された情報に基づいて、制御装置から受信する集約ネットワークに対して規定された集約化フローを、集約ネットワーク内のコアノードごとに規定される実フローに変換させることを特徴とする。
本発明によれば、複数の通信装置を含む通信ネットワークにおいて、各通信装置への制御を簡易化しつつ、通信ネットワークの信頼性を向上させることができる。
本発明による通信システムの一実施形態を示すブロック図である。 集約化装置の構成例を示すブロック図である。 実トポロジテーブルが保持する情報の例を示す説明図である。 トポロジ変換テーブルが保持する情報の例を示す説明図である。 フロー変換テーブルが記憶する情報の例を示す説明図である。 ネットワーク構成データベースが保持する情報の例を示す説明図である。 ポリシデータベースが保持する情報の例を示す説明図である。 集約化装置の動作例を示すフローチャートである。 設定されるフローの例を示す説明図である。 探索された経路の例を示す説明図である。 集約化装置の他の動作例を示すフローチャートである。 集約ネットワークを切り替える処理の例を示す説明図である。 障害が発生した場合の動作例を示す説明図である。 多系統の非対称なノード構成を含む冗長化ネットワークの例を示す説明図である。 ポリシデータベースが保持する情報の他の例を示す説明図である。 本発明による通信制御装置の概要を示すブロック図である。 本発明による通信システムの概要を示すブロック図である。 オープンフローを用いた一般的なネットワーク構成を示す説明図である。 オープンフローを用いて通信ネットワークを集約化した構成を示す説明図である。 通信ネットワークを集約化した場合の概念を示す説明図である。 稼動系と待機系の二系統で冗長化した通信ネットワークの構成を示す説明図である。
以下、本発明の実施形態を図面を参照して説明する。本実施形態では、本発明による通信システムを、オープンフローを利用して実現する場合について説明する。
図1は、本発明による通信システムの一実施形態を示すブロック図である。図1に例示する通信システムは、制御装置501と、集約化装置502と、コアノード505とを備えている。
コアノード505は、規定されたフローに応じて受信したパケットを処理する通信装置である。コアノード505は、後述する集約ネットワーク503または集約ネットワーク504に含まれ、オープンフローにおけるオープンフロースイッチに対応する。コアノード505は、セキュアチャネルを介して集約化装置502に接続される。
制御装置501は、コアノード505を制御する装置である。具体的には、制御装置501は、後述する集約化された通信ネットワークを制御することによりコアノード505の動作を制御する装置であり、オープンフローにおけるオープンフローコントローラに対応する。
制御装置501は、集約化装置502に接続され、集約化装置502を介してコアノード505から通知されるPacket-In メッセージを処理する。また、制御装置501は、集約化装置502に対してフローの設定指示を行う。
制御装置501が制御対象とする通信ネットワークは、1台以上のコアノードを集約した通信ネットワーク(以下、集約ネットワークと記すこともある)である。すなわち、集約ネットワークは、仮想的な1台のコアノードを含むネットワークとして取り扱われる。
仮想的な1台のコアノードが備えるポート数は、集約ネットワーク内のコアノードがその集約ネットワーク外の装置に接続されるポート(以下、実ポートと記すこともある。)数に等しい。すなわち、集約ネットワークを通信ネットワークの一系統と捉えた場合、その集約ネットワークに含まれる唯一のコアノードが備えるポート数は、対象とする系統の通信ネットワークが他の装置または通信ネットワークと接続するポート数に等しい。
また、以下の説明では、集約ネットワーク内の個々のコアノード自体を含む通信ネットワークを実ネットワークと記す。図1に示す例では、2つの集約ネットワーク503および集約ネットワーク504が存在する。本実施形態では、集約ネットワーク503は、稼働系の通信ネットワークであり、集約ネットワーク504は、待機系の通信ネットワークである。
図1に示す例では、集約ネットワーク503は、4台のコアノード505を含み、エッジノード506およびエッジノード507が接続される。また、集約ネットワーク504は、集約ネットワーク503と同一のネットワークトポロジを有し、集約ネットワーク503と同様に、エッジノード506およびエッジノード507が接続される。また、集約ネットワーク503と集約ネットワーク504は、いずれか一系統のみ稼働する。
なお、図1では、集約ネットワークが2つの場合を例示しているが、集約ネットワークの数は2つに限定されず、3つ以上であってもよい。また、図1では、各集約ネットワークに含まれるコアノードが4台の場合を例示しているが、コアノードの数は2台または3台であってもよく、5台以上であってもよい。
集約化装置502は、コアノード505と制御装置501との間に接続され、冗長化された通信ネットワークを集約化する装置である。集約化装置502は、集約ネットワーク503または集約ネットワーク504に含まれるすべてのコアノードに接続され、オープンフローにおけるオープンフローコントローラとして動作する。すなわち、集約化装置502は、各コアノード505から通知されるPacket-In メッセージを変換して制御装置501に通知する。
さらに、集約化装置502は、制御装置501から集約ネットワーク503または集約ネットワーク504に対して設定されるフローを適用可能な形式に変換し、集約ネットワーク内の各コアノードに対するフロー設定を行う。このように、集約化装置502は、各コアノードにフローを設定することで通信を制御していることから、集約化装置502のことを、通信制御装置ということができる。
エッジノード506およびエッジノード507は、通信の始点になる装置であり、例えば、エッジルータである。
図2は、本実施形態の集約化装置502の構成例を示すブロック図である。本実施形態の集約化装置502は、仮想スイッチ601と、トポロジ変換部602と、仮想コントローラ603と、実トポロジテーブル604と、トポロジ変換テーブル605と、フロー変換テーブル606と、ネットワーク構成データベース607と、ポリシ判定部608と、ポリシデータベース609と、障害検出部610とを含む。
仮想スイッチ601は、制御装置501に接続されオープンフロースイッチのように動作する仮想スイッチである。具体的には、仮想スイッチ601は、制御装置501から発行されるフローの設定を受け取って、トポロジ変換部602に通知する。また、仮想スイッチ601は、トポロジ変換部602から受信したPacket-In メッセージを制御装置501に通知する。
仮想コントローラ603は、実ネットワークのノード505に接続され、オープンフローコントローラのように動作する。具体的には、仮想コントローラ603は、コアノード505から通知されるPacket-In メッセージを受信してトポロジ変換部602に通知する。また、仮想コントローラ603は、トポロジ変換部602から受信したコアノード505に対するフロー設定などの命令を、適切なコアノード505に通知する。
トポロジ変換部602は、実ネットワークと集約ネットワークとの間で必要な変換を相互に行う。具体的には、トポロジ変換部602は、集約ネットワーク内のコアノード505から受信する通知をその集約ネットワークからの通知に変換して制御装置501へ送信する。また、トポロジ変換部602は、制御装置501から受信する集約ネットワークに対する通知をその集約ネットワーク内の各コアノード505に対する通知に変換して送信する。
本実施形態のトポロジ変換部602は、仮想スイッチ601から送信されるフローの設定やPacket-Outなど、オープンフロースイッチとして動作するコアノード505への命令を仲介する。具体的には、トポロジ変換部602は、仮想スイッチ601から受信した情報を、実ネットワークに存在するコアノード505への命令に変換して、仮想コントローラ603に通知する。
また、本実施形態のトポロジ変換部602は、仮想コントローラ603から送信されるPacket-In メッセージなど、オープンフローコントローラとして動作する制御装置501への通知を仲介する。具体的には、トポロジ変換部602は、仮想コントローラ603から受信した情報を、集約ネットワークからのメッセージに変換して601に通知する。
実トポロジテーブル604は、実ネットワークの各コアノードがどのように接続されているかを示すトポロジ情報を保持する。図3は、実トポロジテーブル604が保持する情報の例を示す説明図である。図3に示す例では、コアノード間の接続(リンク)を、コアノードを特定するID(実ノードID)とそのコアノード上のポートを特定するID(実ポートID)のペアで定義している。なお、実トポロジテーブル604に保持されるトポロジ情報は、事前に設定されていてもよく、適宜更新されてもよい。
トポロジ変換テーブル605は、集約ネットワークのどのポートが実ネットワークのどのポートに対応しているかを示す対応付けと、実ネットワーク上で利用可能なノードおよびリンクについての情報を記憶する。具体的には、トポロジ変換テーブル605は、集約ネットワークごとに、実ポートとその実ポートを有するコアノード505(以下、実ノードと記すこともある。)との関係を記憶する。
図4は、トポロジ変換テーブル605が保持する情報の例を示す説明図である。トポロジ変換テーブル605は、集約ネットワークに含まれるコアノードおよびリンクを示す情報を保持する。図4に示す例では、トポロジ変換テーブル605は、実ネットワークのコアノードを特定するID(実ノードID)およびリンクを特定するためのID(リンクID)を保持する。
また、トポロジ変換テーブル605は、集約ネットワークのポートに対応する実ネットワークのコアノードおよびそのコアノードのポートを対応付けて保持する。図4に示す例では、トポロジ変換テーブル605は、集約ネットワークのポートID(集約化ポートID)に対し、実ネットワークのコアノードIDとそのコアノードのポートを特定するポートIDを対応付けて保持する。
なお、実ネットワークのポートには、エッジノードに接続されているポートと、コアノード間の接続に利用されているポートが存在する。集約ネットワークのポートに対応する実ネットワークのポートは、エッジノードに接続されているポートである。
このような情報が定義されると、トポロジ変換部602は、フロー変換テーブル606に保持される情報に基づいて、集約化フローと実フローとを相互に変換する処理を行う。
フロー変換テーブル606は、集約ネットワークでのフローを実ネットワークでのフローに変換するために、両者を対応付けた情報を保持する。具体的には、フロー変換テーブル606は、集約ネットワークごとに規定されるフロー(以下、集約化フローと記す。)と、集約ネットワーク内のコアノードごとに規定されるフロー(以下、実フローと記す。)とを、相互に変換されるフローとして対応付けて保持する。
図5は、フロー変換テーブル606が記憶する情報の例を示す説明図である。図5に示す例では、フロー変換テーブル606は、集約化フローを示す情報801と、実フローを示す情報802とを対応付けて保持する。なお、一つの集約化フローに対して複数のコアノードへの実フローが対応するため、実フローを示す情報802には、対象のコアノードも併せて保持される。
フロー情報には、コアノードが受け取ったパケットに対する絞り込みの情報(マッチ条件)と、そのパケットに対してどのような操作を行うか(アクション)を示す情報が含まれる。図5に示す集約化フローの例では、始点IPアドレスが“xx.xx.xx.xx”かつ終点IPアドレスが“yy.yy.yy.yy”であって、パケットを受け取ったポート番号が“port1”であった場合に、そのパケットをポート番号が“port2”のポートから送信(FORWARD)する、というフローが設定されていることを示す。そして、この集約化フローに対し、3つのコアノードへの実フローが対応しており、フロー変換テーブル606は、集約ネットワーク上で集約化フローを再現できるように、適切なマッチ条件とアクションを対応付けて保持する。ただし、対応付けられる実フローの数は、3つに限定されず、2つであってもよく、4つ以上であってもよい。
ネットワーク構成データベース607は、実ネットワーク上にあるどのノードとリンクを利用して通信を行うかを示す情報を、ネットワークの系統ごと(すなわち、集約ネットワークごと)に保持する。
図6は、ネットワーク構成データベース607が保持する情報の例を示す説明図である。図6に示す例では、2つの系統(集約ネットワーク)A,Bに対する情報が設定されている。また、図6に示す例では、ネットワーク構成データベース607は、トポロジ変換テーブル605が記憶する集約ネットワーク(系統)ごとの情報と、各系統が利用中か否かを示すフラグ(図6に例示する「利用中フラグ」)とを対応付けて保持する。このフラグは、設定されている系統が、現在稼働中の系統であることを示す。なお、この系統は、トポロジ変換テーブル605にも設定されている。
ポリシデータベース609は、検出された事象に応じて利用する集約ネットワークを定義したポリシを保持する。具体的には、ポリシデータベース609は、実ネットワーク上で発生した障害に対して、どのネットワーク系統を利用するかを示す対応表を保持する。
図7は、ポリシデータベース609が保持する情報の例を示す説明図である。図7に示す例では、集約ネットワーク(系統)A,Bのいずれを利用するか決定するためのポリシを示している。具体的には、図7では、障害が発生していない場合、および、フローの再設定などにより回避が可能な障害に対しては系統Aを利用し、コアノードの障害などにより回避不可能な障害が発生した場合には、系統Bに切り替えるというポリシが示されている。
障害検出部610は、実ネットワーク上で発生した障害を検出して、ポリシ判定部608に通知する。障害検出部610は、例えば、SNMP(Simple Network Management Protocol)を用いて各コアノードおよびそのポートの状態を監視することで障害を検出してもよい。なお、障害検出部610は、ネットワーク上の障害を検出する方法として知られた他の方法を用いて、実ネットワーク上で発生した障害を検出してもよい。
ポリシ判定部608は、ポリシデータベース609が保持するポリシをもとに、どの系統の集約ネットワークを利用するかを判定する。そして、ポリシ判定部608は、判定した内容に従って、トポロジの構成を書き換える。すなわち、ポリシ判定部608は、判定結果をもとに、トポロジ変換テーブル605の内容を更新することにより、集約ネットワーク単位で利用するコアノードを切り替える。
具体的には、ポリシ判定部608は、障害検出部610から障害発生の通知を受け、通知された内容から障害のレベルを判定する。ポリシ判定部608は、判定したレベルを元にポリシデータベース609を参照して、いずれの系統のネットワークを利用するか判定する。そして、ポリシ判定部608は、ネットワーク構成データベース607を参照し、利用すると判定した系統(集約ネットワーク)に含まれるコアノードおよびリンクを読み出して、トポロジ変換テーブル605にその情報を書き込む。
このようにポリシ判定部608がトポロジ情報を書き換えることにより、集約ネットワークに対する実ネットワークのトポロジを切り替えられるため、通信ネットワークの信頼性を向上できるとともに、コアノードへの制御を簡易化できる。
仮想スイッチ601と、トポロジ変換部602と、仮想コントローラ603と、ポリシ判定部608と、障害検出部610とは、プログラム(通信制御用プログラム)に従って動作するコンピュータのCPUによって実現される。例えば、プログラムは、集約化装置502の記憶部(図示せず)に記憶され、CPUは、そのプログラムを読み込み、プログラムに従って、仮想スイッチ601、トポロジ変換部602、仮想コントローラ603、ポリシ判定部608および障害検出部610として動作してもよい。
また、仮想スイッチ601と、トポロジ変換部602と、仮想コントローラ603と、ポリシ判定部608と、障害検出部610とは、それぞれが専用のハードウェアで実現されていてもよい。
また、実トポロジテーブル604と、トポロジ変換テーブル605と、フロー変換テーブル606と、ネットワーク構成データベース607と、ポリシデータベース609とは、例えば、集約化装置502の記憶部(図示せず)に記憶される。記憶部は、例えば、磁気ディスクなどの記憶装置により実現される。実トポロジテーブル604、トポロジ変換テーブル605、フロー変換テーブル606およびネットワーク構成データベース607は、それぞれ異なる記憶部に記憶されていてもよく、同一の記憶部内で領域を分けて記憶されていてもよい。
次に、本実施形態の通信システムの動作を説明する。図8は、本実施形態の集約化装置502の動作例を示すフローチャートである。図8は、制御装置501が集約化装置502にフローを設定し、集約化装置502が各コアノード505に対してフローを設定する処理を示している。
以下の説明では、図4に例示する情報がトポロジ変換テーブル605に保持されているものとする。また、実トポロジテーブル604には図3に例示する情報が初期値として設定されているものとする。また、フロー変換テーブル606には、何も情報が設定されていないものとする。
また、集約ネットワーク503が系統Aのネットワークに対応するものとし、集約ネットワーク504が系統Bのネットワークに対応するものとする。また、系統Aが稼働系の通信ネットワークとし、系統Bが待機系のネットワークとする。ここでは、初めに稼働系である系統Aのトポロジ情報が初期値としてトポロジ変換テーブル605に設定されているものとする。なお、一般に、トポロジ変換テーブル605の初期値には、ネットワーク構成データベース607の任意の一系統が設定される。
まず、制御装置501は、集約化装置502の仮想スイッチ601に対して、フロー(集約化フロー)の設定を通知する(ステップS1201)。図9は、設定されるフローの例を示す説明図である。図9に示す例では、「始点IPアドレスがxx.xx.xx.xxで終点IPアドレスがyy.yy.yy.yyであるパケットをポート1で受信」した場合に「ポート2から出力する」という内容をコアノード903に設定する通知を示す。なお、図9に例示するコアノード903は、集約された仮想のコアノードである。
仮想スイッチ601は、受信したフローをトポロジ変換部602に通知する。トポロジ変換部602は、実ネットワーク上でフローを設定する対象となるコアノードを選出する(ステップS1202)。すなわち、トポロジ変換部602は、集約化フローを実フローに変換する対象のコアノードを特定する。
ここでは、図5に例示する集約化フローの情報801で示されるマッチ条件およびアクションが制御装置501から通知されたとする。この場合、集約化されたコアノードに設定されるin_portおよびFORWARD先のポートが決まっているため、トポロジ変換部602は、まずそれぞれのポートに該当する実ネットワーク上のポートを探索する。具体的には、トポロジ変換部602は、トポロジ変換テーブル605を参照して、該当のノードおよびポートを特定する。
次に、トポロジ変換部602は、実トポロジテーブル604を参照し、集約ネットワーク内のコアノードの接続関係に基づいて、特定したポートの間を結ぶ経路を探索する。このとき、探索の基準には経路最短化や容量最大化など、様々な方法が存在するが、トポロジ変換部602は、任意の基準や方法を用いて経路を探索すればよい。
図10は、探索された経路の例を示す説明図である。例えば、最短経路探索により、図10の太矢印で示す経路が探索されたとする。このとき、実トポロジテーブル604には、稼働系の集約ネットワーク503に含まれるリンクのみ設定されているため、最短経路として探索される経路は、集約ネットワーク503に含まれるリンクを介した経路のみになる。
経路が特定されると、トポロジ変換部602は、経路上のノードに対してフローを設定する。その際、トポロジ変換部602は、算出された通信経路に応じて、集約化フローを実フローに変換する(ステップS1203)。図10に示す例では、対象のコアノードは、コアノード1001、コアノード1002およびコアノード1003の3つである。経路が特定されれば、それぞれのコアノードの入力ポートおよび出力ポートが決定できるため、トポロジ変換部602は、このポートの関係から、集約化フローを各コアノードに設定する実ノードに分解できる。このようにして、図5に例示する実フローが算出される。
トポロジ変換部602は、算出したフローを仮想コントローラ603に通知し、対象のコアノードへ算出したフローが設定される(ステップS1204)。
次に、実ネットワークのコアノードが受け取ったPacket-In メッセージを制御装置501に通知する処理を説明する。図11は、本実施形態の集約化装置502の他の動作例を示すフローチャートである。
仮想コントローラ603は、コアノードからのPacket-In メッセージを受信すると、トポロジ変換部602に通知する(ステップS1301)。
トポロジ変換部602は、トポロジ変換テーブル605を参照し、Packet-In メッセージを送信したコアノードのIDと、Packet-In メッセージに含まれるポート番号をもとに、対応する集約化ポートを特定する(ステップS1302)。対応する集約化ポートが存在しなかった場合(ステップS1302におけるNO)、トポロジ変換部602は、該当のPacket-In メッセージを制御装置501に伝えることなく破棄する(ステップS1303)。
一方、対応する集約化ポートが存在した場合(ステップS1302におけるYES)、トポロジ変換部602は、Packet-In メッセージのポート番号を変換する(ステップS1304)。具体的には、Packet-In メッセージには対象のパケットを受信したポート番号が含まれているため、トポロジ変換部602は、実ネットワークのコアノードにおけるポート番号を、集約ネットワークのコアノードにおけるポート番号に置き換える処理を行う。
トポロジ変換部602は、ポート番号を書き換えたPacket-In メッセージを仮想スイッチ601を介して制御装置501に通知する(ステップS1305)。
このように、トポロジ変換部602が、図8に例示する処理、および、図11に例示する処理を行うことより、実ネットワークで発生したPacket-In メッセージを、あたかも集約ネットワークで発生したPacket-In メッセージであるかのように変換できる。
また、トポロジ変換部602が、集約ネットワークに設定されるフロー(集約化フロー)を、その時点の実ネットワークトポロジに合わせて実フローに分割するため、適切なコアノードにフローを設定ができる。そのため、制御装置501は、複雑な実ネットワークを意識することなくネットワーク上の通信を制御できる。
次に、実ネットワークに障害が発生した場合に集約ネットワークを切り替える処理を説明する。図12は、集約ネットワークを切り替える処理の例を示す説明図である。また、図13は、図10に例示する状態から障害が発生した場合の動作例を示す説明図である。集約ネットワークの切り替えは、利用するトポロジを切り替えることにより行われる。
実ネットワークで障害が発生すると、障害検出部610が、その障害を検出する(ステップS1401)。ここでは、図10に例示するコアノード1001に障害が発生し、コアノード1001が使用不可能になったものとする。障害検出部610は、その障害の内容をポリシ判定部608に通知する。
ポリシ判定部608は、受信した障害の内容をもとに、障害の影響レベルを判定する(ステップS1402)。ここでは、ポリシ判定部608は、フロー変換テーブル606を参照して、コアノード1001が使用不可能となったという情報から、障害の影響を判定する。図5に示す例では、コアノード1001が故障することで、集約化フローが実現不可能になる。このように、実現不可能な集約化フローが存在するため、ポリシ判定部608は、この集約化フローに対する経路の再計算を試みる。
図13に例示するように、集約ネットワーク503のコアノード1001に障害が発生すると、ルートの再設定は不可能である。そのため、ポリシ判定部608は、障害レベルを「回避不能な障害」と判定する。なお、ルートの再設定が可能であった場合には、ポリシ判定部608は、障害レベルを「回避可能な障害」と判定する。
ポリシ判定部608は、ネットワーク構成データベース607およびポリシデータベース609を参照し、系統(集約ネットワーク)の切り替え先を判定する(ステップS1403)。判定の前後で系統が同じであった場合、すなわち、系統の切り替えが必要でない場合(ステップS1403におけるNO)、ポリシ判定部608は、何もせずに処理を終了する。
例えば、図7に例示するポリシがポリシデータベース609に設定されている場合、ポリシ判定部608は、ステップS1402で判定した「回避不能な障害」に対応する切り替え先の系統Bを特定する。また、例えば、図6に例示するネットワーク構成データベース607のように現在の系統が設定されている場合、ポリシ判定部608は、ネットワーク構成データベース607を参照して、現在の系統Aを特定する。この場合、ポリシ判定部608は、現在の系統Aから系統Bへの切り替えが必要と判定する。
系統の切り替えが必要であった場合(ステップS1403におけるYES)、ポリシ判定部608は、トポロジ変換テーブル605を書き換える(ステップS1404)。上記の例では、切り替え先が系統Bである。そのため、ポリシ判定部608は、図6に例示する系統Bに含まれる実ノードID、リンクIDおよびポート対応リストをトポロジ変換テーブル605に書き込む。さらに、ポリシ判定部608は、ネットワーク構成データベース607において、系統Aに設定された利用中フラグを削除し、系統Bに利用中フラグを設定する。
ポリシ判定部608は、トポロジ変換テーブル605への書き換えを検出すると、フロー変換テーブル606に設定するフローの再計算を行う(ステップS1405)。具体的には、ポリシ判定部608は、フロー変換テーブル606に設定されている実フローの部分をすべて削除する。そして、ポリシ判定部608は、図8に例示するステップS1202およびステップS1203で行った各集約化フローに対する処理と同様の処理を行う。
このように、ポリシ判定部608は、トポロジ変換テーブル605に保持されている情報を更新したときに、集約化フローに対応する実フローを再計算して、フロー変換テーブル606に保持された集約化フローに対する実フローを更新する。
ポリシ判定部608は、再構成されたフロー変換テーブル606の内容にしたがって、実ネットワークの各コアノードに対してフローを設定する(ステップS1406)。この処理は、図8に例示するステップS1204と同様である。
このように、ポリシ判定部608が、トポロジ変換テーブル605およびフロー変換テーブル606を更新することにより、制御装置501が、実ネットワークで発生した障害を意識することなく、障害発生の前後でネットワーク制御を継続できる。
以上のように、本実施形態では、トポロジ変換部602が、集約ネットワーク内のコアノードから制御装置への通知、および、制御装置から集約ネットワークへの通知をそれぞれ変換する。また、トポロジ変換テーブル605が、集約ネットワーク内のコアノードの接続関係、実ポートおよび実ノードを集約ネットワークごとに保持し、ポリシ判定部608が、トポロジ変換テーブル605が保持する情報を集約ネットワーク単位で更新する。そして、トポロジ変換部602は、トポロジ変換テーブル605に保持された情報に基づいて、集約化フローを、集約ネットワーク内のコアノードごとに規定される実フローに変換する。
よって、複数の通信装置を含む通信ネットワークにおいて、各通信装置への制御を簡易化しつつ、通信ネットワークの信頼性を向上させることができる。そのため、通信ネットワークの集約化を崩すことなく、障害を抑制できる。
すなわち、本実施形態の通信システムでは、集約化装置502にトポロジ変換テーブル605とフロー変換テーブル606を用意し、ポリシ判定部608が、ネットワーク障害の検出時に各変換テーブルを書き換える。また、トポロジ変換テーブル605に書き込む内容を、ポリシデータベース609とネットワーク構成データベース607の内容に応じて変更する。
具体的には、集約化装置502が集約化後の通信ネットワークと実際の通信ネットワークの間で情報の変換を行う際に参照するトポロジ変換テーブル605およびフロー変換テーブル606の内容を、ポリシ判定部608が現在利用中の系統に応じて書き換える。そのため、多系統構成による通信ネットワークの冗長化を行いつつ、集約化を実現できる。
また、本実施形態の通信システムでは、集約化後の通信ネットワークと実際の通信ネットワークとの対応関係がネットワーク構成データベース607によって与えられ、ポートの対応以外の制約なくネットワークの構成を設定できる。そのため、通信ネットワークの冗長化構成を柔軟に設定できる。
また、一般的な通信システムでは、大規模障害を想定して冗長化ネットワークを構築しようとした場合、ネットワークの全面的な切り替えのために、同じトポロジのネットワークを複数用意する必要があり、その構成に様々な制限が存在していた。しかし、本実施形態では、トポロジ変換テーブル605の内容を更新することで集約ネットワークを切り替えることができるため、上述するような制限を抑制できる。
次に、本実施形態の通信システムの変形例を説明する。上記実施形態では、通信ネットワークの冗長化の場合を例示し、図1に例示するような同一のトポロジを有する二系統のネットワークを切り替える方法を説明した。本発明による通信システムでは、集約ネットワークに含まれる実ネットワークのノード構成は、ネットワーク構成データベース607に設定された内容によって決定される。そのため、より柔軟に冗長化構成を定義できる。
図14は、多系統の非対称なノード構成を含む冗長化ネットワークの例を示す説明図である。図14に示す例では、実ネットワークに6つのコアノードが含まれ、4つのコアノードを含む系統の集約ネットワーク1801、3つのコアノードを含む系統の集約ネットワーク1802、および、6つのコアノードを含む系統の集約ネットワーク1803が定義されている。
このように、図14に例示する集約ネットワーク(系統)は、ノード数もトポロジも異なっており、また、複数の集約ネットワーク(系統)に属するコアノードも存在する。ただし、集約ネットワークからすべてのエッジノードに対するリンクが存在していれば、その構成は任意である。すなわち、コアノードを組み合わせて、すべてのエッジノードにリンクするような集約ネットワークが構成されればよい。トポロジ変換部602によって実ネットワークの構成は隠蔽されるため、上述する条件を満たす集約ネットワーク(系統)であれば、制御装置501から見えている集約ネットワークには影響しない。
さらに、上記実施形態では、ポリシデータベース609に設定される障害レベルが「回避可能な障害」「回避不能な障害」の2種類だけであったが、障害レベルの種類はこの2種類に限定されない。また、上記実施形態では、障害レベルに応じて利用する系統が定義されていたが、利用する系統を決定するための情報は、障害レベルに限定されない。
図15は、ポリシデータベース609が保持する情報の他の例を示す説明図である。図15に示す例では、現在利用中の系統と障害レベルに応じて利用する系統を決定するポリシを示している。
図15に示す例では、例えば、障害レベルが「ノードXとノードYの帯域狭窄」と検出された場合、利用中の系統に応じて、利用する系統を系統Aまたは系統Bにそれぞれ変更することができる。このように、系統を切り替える条件を細分化することで、よりきめ細かな制御が可能になる。
また、障害レベルには、より具体的な事象を設定することが可能である。例えば、障害レベルに「あるエッジノードからあるエッジノードの間の通信帯域の利用率が急激に上がった」という現象をポリシデータベース609に設定してもよい。ここで、例えば、利用中の系統に「系統A」、利用する系統に「系統B」を対応付けて設定しておけば、系統Aで上記現象を検知した際に、該当の経路の帯域に余裕のある系統Bに一時的に切り替えることが可能になる。このようにすることで、サービスが利用できなくなることを抑制できる。
なお、この場合、「利用率が戻ったらもとに戻す」という制御も容易に行うことができる。例えば、利用中の系統に「系統B」を設定し、利用する系統に「系統A」を設定し、障害レベルに、「あるエッジノードからあるエッジノードの間の通信帯域の利用率が平常値に戻った(帯域回復)」という現象をポリシデータベース609に設定すればよい。
このように、ポリシ判定部608が、ポリシデータベース609に設定されたポリシに基づいて系統を切り替える処理を行う。そのため、冗長構成された通信ネットワークを、単なる障害回避のためだけではなく、サービス品質の保障やネットワーク利用効率の向上のためにも利用できる。
次に、本発明の概要を説明する。図16は、本発明による通信制御装置の概要を示すブロック図である。本発明による通信制御装置80(例えば、集約化装置502)は、規定されたフローに応じて受信したパケットを処理するコアノード(例えば、コアノード505)と、コアノードを制御する制御装置(例えば、制御装置501)との間に接続され、1台以上のコアノードを集約した集約ネットワーク(例えば、集約ネットワーク503,504)内に存在する各コアノードを制御する。
通信制御装置は、集約ネットワーク内のコアノードから受信する通知(例えば、Packet-In メッセージ)を、その集約ネットワークからの通知に変換して制御装置へ送信し、制御装置から受信する集約ネットワークに対する通知(例えば、集約化フロー)を集約ネットワーク内の各コアノードに対する通知(例えば、実フロー)に変換してそのコアノードに送信する通信制御部81(例えば、トポロジ変換部602)と、集約ネットワーク内のコアノードの接続関係(例えば、リンク情報)、および、集約ネットワーク内のコアノードが、その集約ネットワーク外の装置に接続されるポートである実ポートと、その実ポートを有するコアノードである実ノードとを特定する情報(例えば、実ノードID、リンクID)を、集約ネットワークごとに記憶するトポロジ変換情報記憶部82(例えば、実トポロジテーブル604、トポロジ変換テーブル605)と、トポロジ変換情報記憶部82に記憶される情報を、集約ネットワーク単位で更新するトポロジ更新部83(例えば、ポリシ判定部608)とを備えている。
通信制御部81は、トポロジ変換情報記憶部82に記憶された情報に基づいて、制御装置から受信する集約ネットワークに対して規定された集約化フローを、集約ネットワーク内のコアノードごとに規定される実フローに変換する。
そのような構成により、複数の通信装置を含む通信ネットワークにおいて、各通信装置への制御を簡易化しつつ、通信ネットワークの信頼性を向上させることができる。
また、通信制御装置は、検出された事象(例えば、障害レベル)に応じて利用する集約ネットワークを定義したポリシを記憶するポリシ記憶部(例えば、ポリシデータベース609)を備えていてもよい。そして、トポロジ更新部83は、ポリシに基づいて、トポロジ変換情報記憶部82に記憶されている情報を、検出された事象に対応する集約ネットワークを示す情報で更新してもよい。そのような構成により、事象に応じた通信ネットワークの切り替えを柔軟に行うことが可能になる。
また、通信制御部81は、集約ネットワーク内のコアノードの接続関係に基づいて(例えば、最短経路探索により)通信経路を算出し、算出された通信経路に応じて、集約化フローを実フローに変換してもよい。このようにすることで、集約ネットワーク内の通信経路を動的に決定することが可能になる。
また、通信制御装置は、相互に変換される集約化フローと実フローとを対応付けて記憶するフロー変換情報記憶部(例えば、フロー変換テーブル606)を備えていてもよい。そして、通信制御部81は、フロー変換情報記憶部に記憶される情報に基づいて、集約化フローと実フローとを相互に変換してもよい。
また、トポロジ更新部83は、トポロジ変換情報記憶部に記憶されている情報を更新したときに、集約化フローに対応する実フローを再計算して、フロー変換情報記憶部に記憶された集約化フローに対する実フローを更新してもよい。そのようにすることで、集約ネットワークの切り替えを、通信制御に即時反映できる。
図17は、本発明による通信システムの概要を示すブロック図である。本発明による通信システムは、規定されたフローに応じて受信したパケットを処理するコアノード90(例えば、コアノード505)と、コアノード90を制御する制御装置(例えば、制御装置501)とコアノードとの間に接続され、1台以上のコアノードを集約した集約ネットワーク内に存在する各コアノードを制御する通信制御装置80(例えば、集約化装置502)とを備えている。
なお、通信制御装置80が備える構成は、図16に例示する通信制御装置80が備える構成と同様である。このような構成であっても、複数の通信装置を含む通信ネットワークにおいて、各通信装置への制御を簡易化しつつ、通信ネットワークの信頼性を向上させることができる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)規定されたフローに応じて受信したパケットを処理するコアノードと、前記コアノードを制御する制御装置との間に接続され、1台以上のコアノードを集約した集約ネットワーク内に存在する各コアノードを制御するコンピュータに適用される通信制御用プログラムであって、前記コンピュータに、前記集約ネットワーク内のコアノードから受信する通知を当該集約ネットワークからの通知に変換して前記制御装置へ送信し、前記制御装置から受信する集約ネットワークに対する通知を前記集約ネットワーク内の各コアノードに対する通知に変換して当該コアノードに送信する通信制御処理、および、前記集約ネットワーク内のコアノードの接続関係、および、前記集約ネットワーク内のコアノードが当該集約ネットワーク外の装置に接続されるポートである実ポートと当該実ポートを有するコアノードである実ノードとを特定する情報を、集約ネットワークごとに記憶するトポロジ変換情報記憶部の情報を、前記集約ネットワーク単位で更新するトポロジ更新処理を実行させ、前記通信制御処理で、前記トポロジ変換情報記憶部に記憶された情報に基づいて、前記制御装置から受信する前記集約ネットワークに対して規定された集約化フローを、前記集約ネットワーク内のコアノードごとに規定される実フローに変換させるための通信制御用プログラム。
(付記2)コンピュータに、トポロジ更新処理で、検出された事象に応じて利用する集約ネットワークを定義したポリシに基づいて、トポロジ変換情報記憶部に記憶されている情報を、検出された事象に対応する集約ネットワークを示す情報で更新させる付記1記載の通信制御用プログラム。
以上、実施形態及び実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2014年7月16日に出願された日本特許出願2014−145872を基礎とする優先権を主張し、その開示の全てをここに取り込む。
101,201,501 制御装置
102,303,403,505,903,1001〜1008 コアノード
103,203,204 セキュアチャネル
104 通信リンク
105,404,405,506,507,901,902 エッジノード
202,502 集約化装置
301,302 通信ネットワーク
503,504,1801〜1803 集約ネットワーク
601 仮想スイッチ
602 トポロジ変換部
603 仮想コントローラ
604 実トポロジテーブル
605 トポロジ変換テーブル
606 フロー変換テーブル
607 ネットワーク構成データベース
608 ポリシ判定部
609 ポリシデータベース
610 障害検出部

Claims (7)

  1. 規定されたフローに応じて受信したパケットを処理するコアノードと、前記コアノードを制御する制御装置との間に接続され、1台以上の前記コアノードを集約した集約ネットワーク内に存在する各前記コアノードを制御する通信制御装置であって、
    前記集約ネットワーク内の前記コアノードから受信する通知を当該集約ネットワークからの通知に変換して前記制御装置へ送信し、前記制御装置から受信する前記集約ネットワークに対する通知を前記集約ネットワーク内の各前記コアノードに対する通知に変換して当該コアノードに送信する通信制御手段と、
    前記集約ネットワーク内の前記コアノードの接続関係、および、前記集約ネットワーク内の前記コアノードが当該集約ネットワーク外の装置に接続されるポートである実ポートと当該実ポートを有する前記コアノードである実ノードとを特定する情報を、前記集約ネットワークごとに記憶するトポロジ変換情報記憶手段と、
    前記トポロジ変換情報記憶手段に記憶される情報を、前記集約ネットワーク単位で更新するトポロジ更新手段とを備え、
    前記通信制御手段は、前記トポロジ変換情報記憶手段に記憶された情報に基づいて、前記制御装置から受信する前記集約ネットワークに対して規定された集約化フローを、前記集約ネットワーク内の前記コアノードごとに規定される実フローに変換し、さらに、
    検出された事象に応じて利用する前記集約ネットワークを定義したポリシを記憶するポリシ記憶手段を備え、
    前記トポロジ更新手段は、前記ポリシに基づいて、前記トポロジ変換情報記憶手段に記憶されている情報を、検出された事象に対応する前記集約ネットワークを示す情報で更新する
    ことを特徴とする通信制御装置。
  2. 前記通信制御手段は、前記集約ネットワーク内の前記コアノードの接続関係に基づいて通信経路を算出し、算出された通信経路に応じて、前記集約化フローを前記実フローに変換する
    請求項1記載の通信制御装置。
  3. 相互に変換される前記集約化フローと前記実フローとを対応付けて記憶するフロー変換情報記憶手段を備え、
    前記通信制御手段は、前記フロー変換情報記憶手段に記憶される情報に基づいて、前記集約化フローと前記実フローとを相互に変換する
    請求項1又は請求項2に記載の通信制御装置。
  4. 前記トポロジ更新手段は、前記トポロジ変換情報記憶手段に記憶されている情報を更新したときに、前記集約化フローに対応する前記実フローを再計算して、前記フロー変換情報記憶手段に記憶された前記集約化フローに対する前記実フローを更新する
    請求項3記載の通信制御装置。
  5. 規定されたフローに応じて受信したパケットを処理するコアノードと、
    前記コアノードを制御する制御装置と前記コアノードとの間に接続され、1台以上の前記コアノードを集約した集約ネットワーク内に存在する各前記コアノードを制御する通信制御装置とを備え、
    前記通信制御装置は、
    前記集約ネットワーク内の前記コアノードから受信する通知を当該集約ネットワークからの通知に変換して前記制御装置へ送信し、前記制御装置から受信する前記集約ネットワークに対する通知を前記集約ネットワーク内の各前記コアノードに対する通知に変換して当該コアノードに送信する通信制御手段と、
    前記集約ネットワーク内の前記コアノードの接続関係、および、前記集約ネットワーク内の前記コアノードが当該集約ネットワーク外の装置に接続されるポートである実ポートと当該実ポートを有する前記コアノードである実ノードとを特定する情報を、前記集約ネットワークごとに記憶するトポロジ変換情報記憶手段と、
    前記トポロジ変換情報記憶手段に記憶される情報を、前記集約ネットワーク単位で更新するトポロジ更新手段とを含み、
    前記通信制御手段は、前記トポロジ変換情報記憶手段に記憶された情報に基づいて、前記制御装置から受信する前記集約ネットワークに対して規定された集約化フローを、前記集約ネットワーク内の前記コアノードごとに規定される実フローに変換し、さらに、
    検出された事象に応じて利用する前記集約ネットワークを定義したポリシを記憶するポリシ記憶手段を備え、
    前記トポロジ更新手段は、前記ポリシに基づいて、前記トポロジ変換情報記憶手段に記憶されている情報を、検出された事象に対応する前記集約ネットワークを示す情報で更新する
    ことを特徴とする通信システム。
  6. 1台以上のコアノードを集約した集約ネットワーク内に存在する各前記コアノードを制御する通信制御方法であって、
    前記集約ネットワーク内の前記コアノードから受信する通知を当該集約ネットワークからの通知に変換して制御装置へ送信し、前記制御装置から受信する前記集約ネットワークに対する通知を前記集約ネットワーク内の各前記コアノードに対する通知に変換して当該コアノードに送信し、
    前記集約ネットワーク内の前記コアノードの接続関係、および、前記集約ネットワーク内の前記コアノードが当該集約ネットワーク外の装置に接続されるポートである実ポートと当該実ポートを有する前記コアノードである実ノードとを特定する情報を、前記集約ネットワークごとに記憶するトポロジ変換情報記憶手段の情報を、前記集約ネットワーク単位で更新し、
    前記トポロジ変換情報記憶手段に記憶された情報に基づいて、前記制御装置から受信する前記集約ネットワークに対して規定された集約化フローを、前記集約ネットワーク内の前記コアノードごとに規定される実フローに変換し、さらに、
    検出された事象に応じて利用する前記集約ネットワークを定義したポリシに基づいて、前記トポロジ変換情報記憶手段に記憶されている情報を、検出された事象に対応する前記集約ネットワークを示す情報で更新する
    ことを特徴とする通信制御方法。
  7. 規定されたフローに応じて受信したパケットを処理するコアノードと、前記コアノードを制御する制御装置との間に接続され、1台以上の前記コアノードを集約した集約ネットワーク内に存在する各前記コアノードを制御するコンピュータに適用される通信制御用プログラムであって、
    前記コンピュータに、
    前記集約ネットワーク内の前記コアノードから受信する通知を当該集約ネットワークからの通知に変換して前記制御装置へ送信し、前記制御装置から受信する前記集約ネットワークに対する通知を前記集約ネットワーク内の各前記コアノードに対する通知に変換して当該コアノードに送信する通信制御処理、および、
    前記集約ネットワーク内の前記コアノードの接続関係、および、前記集約ネットワーク内の前記コアノードが当該集約ネットワーク外の装置に接続されるポートである実ポートと当該実ポートを有する前記コアノードである実ノードとを特定する情報を、前記集約ネットワークごとに記憶するトポロジ変換情報記憶手段の情報を、前記集約ネットワーク単位で更新するトポロジ更新処理を実行させ、
    前記通信制御処理で、前記トポロジ変換情報記憶手段に記憶された情報に基づいて、前記制御装置から受信する前記集約ネットワークに対して規定された集約化フローを、前記集約ネットワーク内の前記コアノードごとに規定される実フローに変換させ、さらに、
    前記トポロジ更新処理で、検出された事象に応じて利用する前記集約ネットワークを定義したポリシに基づいて、前記トポロジ変換情報記憶手段に記憶されている情報を、検出された事象に対応する前記集約ネットワークを示す情報で更新する
    ための通信制御用プログラム。
JP2016534281A 2014-07-16 2015-07-14 通信制御装置、通信システム、通信制御方法および通信制御用プログラム Active JP6565914B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2014145872 2014-07-16
JP2014145872 2014-07-16
PCT/JP2015/003552 WO2016009642A1 (ja) 2014-07-16 2015-07-14 通信制御装置、通信システム、通信制御方法および通信制御用プログラム

Publications (2)

Publication Number Publication Date
JPWO2016009642A1 JPWO2016009642A1 (ja) 2017-04-27
JP6565914B2 true JP6565914B2 (ja) 2019-08-28

Family

ID=55078150

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016534281A Active JP6565914B2 (ja) 2014-07-16 2015-07-14 通信制御装置、通信システム、通信制御方法および通信制御用プログラム

Country Status (3)

Country Link
US (1) US10257120B2 (ja)
JP (1) JP6565914B2 (ja)
WO (1) WO2016009642A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111064591B (zh) * 2018-10-16 2021-03-26 杭州海康威视数字技术股份有限公司 数据汇聚方法、装置、设备、存储介质和系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8477614B2 (en) * 2006-06-30 2013-07-02 Centurylink Intellectual Property Llc System and method for routing calls if potential call paths are impaired or congested
US7945216B2 (en) * 2006-12-20 2011-05-17 Broadcom Corporation Single chip wireless transceiver operable to perform voice, data and radio frequency (RF) processing
JP5173084B2 (ja) 2010-04-09 2013-03-27 エヌイーシー ヨーロッパ リミテッド エネルギー効率を考慮したルーティング
WO2012070173A1 (en) 2010-11-22 2012-05-31 Nec Corporation Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow
WO2012108382A1 (ja) 2011-02-07 2012-08-16 日本電気株式会社 通信システム、制御装置、通信ノードおよび通信方法
WO2013108121A2 (en) * 2012-01-17 2013-07-25 IPalive AB A device, software module, system or business method for global real-time telecommunication
JP5814849B2 (ja) 2012-03-30 2015-11-17 株式会社エヌ・ティ・ティ・データ オープンフローネットワークシステム、及び、データ通信方法

Also Published As

Publication number Publication date
US20170208020A1 (en) 2017-07-20
US10257120B2 (en) 2019-04-09
JPWO2016009642A1 (ja) 2017-04-27
WO2016009642A1 (ja) 2016-01-21

Similar Documents

Publication Publication Date Title
KR101703088B1 (ko) Sdn 기반의 통합 라우팅 방법 및 그 시스템
US9203702B2 (en) Path calculation method
US9083657B2 (en) Flow communication system
JP5900353B2 (ja) 通信システム、制御装置、通信ノードおよび通信方法
EP2985960A1 (en) Network topology discovery method and system
EP2552060A1 (en) Information system, control apparatus, method of controlling virtual network, and program
JP5534036B2 (ja) 情報システム、制御装置、通信方法およびプログラム
WO2011162215A1 (ja) 通信システム、制御装置、ノードの制御方法およびプログラム
KR20150051107A (ko) 신속한 경로 설정 및 장애 복구 방법
JP6323547B2 (ja) 通信システム、制御装置、通信制御方法、および、プログラム
US9049148B1 (en) Dynamic forwarding plane reconfiguration in a network device
JP2015530768A (ja) 制御装置、その制御方法及びプログラム
EP3076611B1 (en) Communication system, communication method, network information combination apparatus, and network information combination program
WO2011118586A1 (ja) 通信システム、制御装置、転送ノード、処理規則の更新方法およびプログラム
WO2015079615A1 (ja) 通信システム、通信方法、ネットワーク情報結合装置、処理規則変換方法および処理規則変換プログラム
JP2014036333A (ja) ネットワーク管理システム、ネットワーク管理計算機及びネットワークの管理方法
JP6565914B2 (ja) 通信制御装置、通信システム、通信制御方法および通信制御用プログラム
JPWO2014104277A1 (ja) 制御装置、通信システム、通信ノードの制御方法及びプログラム
WO2015135312A1 (zh) 一种实现sdn网络通信管理的方法及装置
Fan et al. An optimization algorithm for spatial information network self-healing based on software defined network
WO2023273941A1 (zh) 路径切换方法、控制器、节点以及存储介质
WO2015080092A1 (ja) ネットワーク制御装置、ネットワークシステム、ネットワーク制御方法、および、プログラム
JP6264469B2 (ja) 制御装置、通信システム及び中継装置の制御方法
JP2015192260A (ja) 制御装置、通信システム、通信方法及びプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161219

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190620

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190715

R150 Certificate of patent or registration of utility model

Ref document number: 6565914

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150