JP5641444B2 - ネットワークシステム、及びネットワーク冗長化方法 - Google Patents

ネットワークシステム、及びネットワーク冗長化方法 Download PDF

Info

Publication number
JP5641444B2
JP5641444B2 JP2011548999A JP2011548999A JP5641444B2 JP 5641444 B2 JP5641444 B2 JP 5641444B2 JP 2011548999 A JP2011548999 A JP 2011548999A JP 2011548999 A JP2011548999 A JP 2011548999A JP 5641444 B2 JP5641444 B2 JP 5641444B2
Authority
JP
Japan
Prior art keywords
switch
band control
control server
band
control channel
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
JP2011548999A
Other languages
English (en)
Other versions
JPWO2011083785A1 (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
Priority to JP2011548999A priority Critical patent/JP5641444B2/ja
Publication of JPWO2011083785A1 publication Critical patent/JPWO2011083785A1/ja
Application granted granted Critical
Publication of JP5641444B2 publication Critical patent/JP5641444B2/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/247Multipath using M:N active or standby paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/66Layer 2 routing, e.g. in Ethernet based MAN's
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing

Landscapes

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

Description

本発明は、ネットワークシステムに関し、特にパケットを転送するスイッチと経路情報を決定する制御サーバが分離されたネットワークシステムに関する。
ネットワークシステムにおける経路制御方式の1つとして、近年、通信機器の制御プロトコルであるオープンフロー(OpenFlow)技術を使用した経路制御方式が研究されている。
オープンフロー技術による経路制御が行われるネットワークシステムでは、OFC(OpenFlow Controller)等の制御サーバが、経路情報を決定し、決定された経路情報に従って、OFS(OpenFlow Switch)等のスイッチのフローテーブルを操作することにより、スイッチの挙動を制御する。
フローテーブルとは、所定のマッチ条件(ルール)に適合するパケットに対して行うべき所定の処理(アクション)を定義したフローエントリが登録されるテーブルである。ルールに適合するパケット群(パケット系列)をフローと呼ぶ。フローのルールは、パケットの各プロトコル階層のヘッダ領域に含まれる宛先アドレス(Destination Address)、送信元アドレス(Source Address)、宛先ポート(Destination Port)、送信元ポート(Source Port)のいずれか又は全てを用いた様々な組み合わせにより定義され、区別可能である。なお、上記のアドレスには、MACアドレス(Media Access Control Address)やIPアドレス(Internet Protocol Address)を含むものとする。また、上記に加えて、入口ポート(Ingress Port)の情報も、フローのルールとして使用可能である。
オープンフロー技術の詳細については、非特許文献1、2に記載されている。
図1及び図2は、オープンフロー技術による経路制御が行われるネットワークシステムの例として、パケットを転送するスイッチと、経路情報を決定する制御サーバにより構成されるネットワークシステムを示す。図1は、当該ネットワークシステムの最小単位の基本構成を示す。図2は、当該ネットワークシステムの具体的な構成例を示す。
このネットワークシステムは、制御サーバ10と、スイッチ20を含む。
制御サーバ10は、経路情報11を決定し、制御チャンネルを経由して、スイッチ20のフローテーブル21上にフローエントリ22を登録することができる。
スイッチ20は、フローテーブル21を持ち、フローエントリ22を保存する。また、スイッチ20は、フローテーブル21に保存されたフローエントリ22に基づいて、リンクを経由して、受信したパケットを他のスイッチ20や端末30に転送する。
図3は、フローエントリに登録される情報を示す。
フローエントリ22は、マッチフィールド51と、プライオリティ52と、アクション53を情報として保持する。
マッチフィールド51は、パケットのヘッダ情報とフローエントリとのマッチング(照合)に使用される情報であり、ヘッダ情報に含まれる送信元(Source)や宛先(Destination)のMACアドレスやIPアドレス、VLAN ID(Virtual Local Area Network − identifier)、並びに、物理ポートやアプリケーションポート等に関する情報を持つ。プライオリティ52は、フローエントリのマッチング順番を決定するための優先順位に関する情報である。アクション53は、パケットの処理方法(処理内容)に関する情報であり、特定ポートにパケットを送出することやパケットを廃棄することを規定した情報を持つ。
図4は、パケットのヘッダ情報を示す。
パケットは、MACヘッダ61と、IPヘッダ62と、TCP(Transmission Control Protocol)ヘッダ63と、暗号化された制御メッセージ64をヘッダ情報として保持する。この制御メッセージ64の例として、オープンフロープロトコルメッセージ(OpenFlow Protocol Message)の1つであり、コントローラからスイッチのフローテーブルにエントリを登録するための「FlowMod」メッセージ等が考えられる。
MACヘッダ61は、送信元MACアドレス(図4のSrc MAC)と、宛先MACアドレス(図4のDst MAC)を持つ。IPヘッダ62は、送信元IPアドレス(図4のSrc IP)と、宛先IPアドレス(図4のDst IP)を持つ。TCPヘッダ63は、送信元ポート(図4のSrc Port)と、宛先ポート(図4のDst Port)を持つ。
スイッチ20は、受信したパケットのパケットヘッダから抽出したヘッダ情報と、フローエントリのマッチフィールド51とを参照し、これらに含まれる同一項目の情報を照合して一致すれば、当該フローエントリのアクション53を、そのパケットに対するアクションとして決定する。
図5において、各フローテーブル内のフローエントリについては、それぞれのフローエントリのプライオリティによりマッチング順番を決定している。
このように、上記のネットワークシステムにおいては、パケット転送手段としてのスイッチと、経路情報決定手段としての制御サーバが分離され、1台の制御サーバが複数のスイッチの経路情報を決定する構成となっており、スイッチと制御サーバは制御チャンネルで接続されている。このような場合、スイッチと制御サーバ間の通信における遅延や障害を回避するため、制御チャンネルは専用線であると望ましいが、制御チャンネルを専用線にするには、スイッチの専用ポートやネットワークの専用リンクを必要とし、可用性や拡張性が制限される。また、その専用線の制御チャンネルが切断された場合に、スイッチが制御情報を受信することができなくなる。
関連する技術として、特許文献1(特開2000−078194号公報)にネットワークシステムが開示されている。この関連技術では、ネットワークを構成するスイッチは、複数の接続ポートを備えており、これらのポートにネットワークを構成する伝送路、エンドシステム、ネットワークサーバが接続される。
また、特許文献2(特開2003−273907号公報)に自律システム、通信制御方法、サーバ及びルータが開示されている。この関連技術では、自律システムは、他の自律システムと相互にBGP(ボーダー・ゲートウェイ・プロトコル)に基づく通信を行う機能を持つ複数のBGPルータと、BGPルータによるBGP通信を集中制御する単一のサーバと、BGPに基づく通信機能を持たないがサーバとBGPルータ間の通信を中継するルータとを含んで構成されている。BGPルータとルータは、サーバからの指示により自機におけるIPパケットの経路情報を変更することが可能である。
また、特許文献3(特開2007−251344号公報)に無線通信装置及び無線通信方法が開示されている。この関連技術では、制御情報に含まれる上り制御情報が制御チャンネルに誤りが発生することにより取得することができない場合であっても、当該情報がデータチャンネルにインバンドされていることから、そのインバンドされた上り制御情報を用いて上り送信のためのフレームが生成される。
特開2000−078194号公報 特開2003−273907号公報 特開2007−251344号公報
"The OpenFlow Switch Consortium" <http://www.openflowswitch.org/> "OpenFlow Switch Specification Version 1.0.0 (Wire Protocol 0x01) December 31, 2009" <http://www.openflowswitch.org/documents/openflow−spec−v1.0.0.pdf>
スイッチが、アウトオブバンド制御サーバだけではなく、インバンド制御サーバのような他の制御サーバも接続可能な仕組みを提供し、アウトオブバンド制御サーバとインバンド制御サーバによって、制御チャンネルを冗長化する仕組みを提供する。
本発明のネットワークシステムは、スイッチと、アウトオブバンド制御サーバと、インバンド制御サーバとを含む。スイッチは、パケットを転送する。アウトオブバンド制御サーバは、スイッチに対し、アウトオブバンド制御チャンネルを経由して制御メッセージを送信し、経路情報を決定する。インバンド制御サーバは、スイッチに対し、インバンド制御チャンネルを経由して制御メッセージを送信し、経路情報を決定する。更に、アウトオブバンド制御サーバは、スイッチに対し、インバンド制御サーバへ制御メッセージを転送する旨を規定した制御メッセージ用フローエントリを登録する。ここでは、スイッチ、アウトオブバンド制御サーバ、並びにインバンド制御サーバは、計算機であるものとする。
本発明のネットワーク冗長化方法では、スイッチにより、パケットを転送する。また、アウトオブバンド制御サーバからスイッチに対し、アウトオブバンド制御チャンネルを経由して制御メッセージを送信し、経路情報を決定する。また、インバンド制御サーバからスイッチに対し、インバンド制御チャンネルを経由して制御メッセージを送信し、経路情報を決定する。更に、アウトオブバンド制御サーバからスイッチに対し、インバンド制御サーバへ制御メッセージを転送する旨を規定した制御メッセージ用フローエントリを登録する。
本発明のプログラムは、スイッチ、アウトオブバンド制御サーバ、並びにインバンド制御サーバの各々として機能する計算機に、上記のネットワーク冗長化方法を実行させるためのプログラムである。なお、本発明のプログラムは、記憶装置や記憶媒体に格納することが可能である。
パケットを転送するスイッチと経路情報を決定する制御サーバが分離されたネットワークシステムにおいて、インバンド制御チャンネルによる冗長化を実現する。
ネットワークシステムの最小単位の基本構成を示す概念図である。 ネットワークシステムの具体的な構成例を示す概念図である。 フローエントリに登録される情報の例を示す図である。 パケットのヘッダ情報の例を示す図である。 フローエントリのプライオリティによるマッチング順番の例を示す図である。 本発明のネットワークシステムの基本構成を示すブロック図である。 本発明のネットワークシステムの基本構成を示すブロック図である。 スイッチのフローテーブルに登録される制御メッセージ用フローエントリの例を示す図である。 スイッチ内部の構成の詳細を示すブロック図である。 スイッチ情報管理部に登録されるスイッチ情報の例を示す図である。 制御サーバ情報管理部に登録される制御サーバ情報の例を示す図である。 アウトオブバンド制御サーバ側の動作を示すフローチャートである。 インバンド制御サーバ側の動作を示すフローチャートである。 アウトオブバンド制御チャンネルの確立の際の動作を示すフローチャートである。 インバンド制御チャンネルの確立の際の動作をを示すフローチャートである。 インバンド制御サーバへのスイッチ情報の登録の際の動作を示すフローチャートである。 アウトオブバンド制御サーバとインバンド制御サーバの切り替えの際の動作を示すフローチャートである。 アウトオブバンド制御サーバとインバンド制御サーバの切り替えの際の動作を示すフローチャートである。 制御メッセージ用フローエントリのマッチングの際の動作を示すフローチャートである。 パケット群からの制御メッセージの抽出の際の動作を示すフローチャートである。
<第1実施形態>
以下に、本発明の第1実施形態について添付図面を参照して説明する。
[基本構成]
図6A、図6Bに示すように、本発明のネットワークシステムは、アウトオブバンド制御サーバ100と、スイッチ200と、インバンド制御サーバ300を含む。
アウトオブバンド制御サーバ100は、スイッチ情報管理部110と、冗長制御サーバ管理部120と、制御チャンネル接続部130と、制御メッセージ処理部140と、経路情報150を備える。
スイッチ200は、制御サーバ情報管理部210と、制御チャンネル接続部230と、制御メッセージ処理部240と、フローテーブル260を備える。
インバンド制御サーバ300は、スイッチ情報管理部310と、冗長制御サーバ管理部320と、制御チャンネル接続部330と、制御メッセージ処理部340と、経路情報350を備える。
アウトオブバンド制御サーバ100、スイッチ200、並びにインバンド制御サーバ300は、計算機内外の各装置の制御、データの生成や処理、及びプログラムの実行を行う機能を有する。例えば、アウトオブバンド制御サーバ100がパケットを転送する経路外にあり、スイッチ200及びインバンド制御サーバ300がパケットを転送する経路上にある場合も考えられる。このとき、アウトオブバンド制御サーバ100は、アウトオブバンド方式で、制御メッセージのみをスイッチに送信し、インバンド制御サーバ300は、インバンド方式で、制御メッセージとデータとをスイッチに送信するものでも良い。
スイッチ情報管理部110、冗長制御サーバ管理部120、制御サーバ情報管理部210、スイッチ情報管理部310、並びに冗長制御サーバ管理部320は、パケットを保持する機能を有する。
冗長制御サーバ管理部120、制御チャンネル接続部130、制御チャンネル接続部230、冗長制御サーバ管理部320、並びに制御チャンネル接続部330は、ネットワークを介して、外部とパケットの送受信を行う機能を有する。
制御メッセージ処理部140、制御メッセージ処理部240、並びに制御メッセージ処理部340は、制御メッセージの生成や処理を行う機能を有する。
[ハードウェアの例示]
アウトオブバンド制御サーバ100、及びインバンド制御サーバ300の例として、PC(パソコン)、アプライアンス(appliance)、ワークステーション、メインフレーム、スーパーコンピュータ等の計算機を想定している。アウトオブバンド制御サーバ100、及びインバンド制御サーバ300は、基本的に同じ構成であると望ましい。
スイッチ200の例として、オープンフロースイッチを想定している。オープンフロースイッチとして使用可能な機器の例として、ルータ、スイッチングハブ等の中継機器や、ゲートウェイ、プロキシ、ファイアウォール並びにロードバランサ等の中継用の計算機等が考えられる。例えば、スイッチ200は、マルチレイヤスイッチ(multi−layer switch)でも良い。マルチレイヤスイッチは、サポートするOSI参照モデルの層毎に、更に細かく分類されている。主な種別としては、ネットワーク層(第3層)のデータを読むレイヤ3スイッチ、トランスポート層(第4層)のデータを読むレイヤ4スイッチ、アプリケーション層(第7層)のデータを読むレイヤ7スイッチ(アプリケーションスイッチ)がある。
アウトオブバンド制御サーバ100、スイッチ200、並びにインバンド制御サーバ300は、物理マシン上に構築された仮想マシン(Virtual Machine(VM))でも良い。
アウトオブバンド制御サーバ100、スイッチ200、並びにインバンド制御サーバ300、及び制御メッセージ処理部140、制御メッセージ処理部240、並びに制御メッセージ処理部340のデータ処理機能やプログラム実行機能を実現するハードウェアの例として、CPU(Central Processing Unit)、マイクロプロセッサ(microprocessor)、マイクロコントローラ、或いは、同様の機能を有する半導体集積回路(Integrated Circuit(IC))等が考えられる。
スイッチ情報管理部110、冗長制御サーバ管理部120、制御サーバ情報管理部210、スイッチ情報管理部310、並びに冗長制御サーバ管理部320のデータ保持機能、及び経路情報150、フローテーブル260、並びに経路情報350を保持するデータ保持機能を実現するハードウェアの例として、RAM(Random Access Memory)、ROM(Read Only Memory)、EEPROM(Electrically Erasable and Programmable Read Only Memory)やフラッシュメモリ等の半導体記憶装置、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の補助記憶装置、又は、DVD(Digital Versatile Disk)やSDメモリカード(Secure Digital memory card)等のリムーバブルディスクや記憶媒体(メディア)等が考えられる。なお、上記のデータ保持機能を実現するハードウェアは、計算機本体に内蔵された記憶装置に限らず、周辺機器(外付けHDD等)や外部のサーバ(Webサーバやファイルサーバ等)に設置された記憶装置、或いは、DAS(Direct Attached Storage)、FC−SAN(Fibre Channel − Storage Area Network)、NAS(Network Attached Storage)、IP−SAN(IP − Storage Area Network)でも良い。
冗長制御サーバ管理部120や冗長制御サーバ管理部320、及び、制御チャンネル接続部130、制御チャンネル接続部230、並びに制御チャンネル接続部330の通信機能を実現するハードウェアの例として、NIC(Network Interface Card)等のネットワークアダプタや、アンテナ等の通信装置、接続口(コネクタ)等の通信ポート等が考えられる。また、ネットワークの例として、インターネット、LAN(Local Area Network)、無線LAN(Wireless LAN)、WAN(Wide Area Network)、バックボーン(Backbone)、ケーブルテレビ(CATV)回線、固定電話網、携帯電話網、WiMAX(IEEE 802.16a)、3G(3rd Generation)、専用線(lease line)、IrDA(Infrared Data Association)、Bluetooth(登録商標)、シリアル通信回線、データバス等が考えられる。
但し、実際には、これらの例に限定されない。
[構成の詳細]
アウトオブバンド制御サーバ100は、スイッチ情報管理部110に、アウトオブバンド配下スイッチ情報111として、事前に自分が管理しているスイッチの情報(スイッチID等)を登録する。更に、アウトオブバンド制御サーバ100は、ネットワーク上にある他の制御サーバの情報を登録する。アウトオブバンド制御サーバ100は、冗長制御サーバ管理部120を利用し、他の制御サーバに、インバンド制御サーバ300としてサービスを提供することが可能かを問い合わせる。アウトオブバンド制御サーバ100は、他の制御サーバからサービス提供可能の通知がある場合、その相手(他の制御サーバ)から受信した証明書を利用し、当該他の制御サーバをインバンド制御サーバ300として、アウトオブバンド制御サーバ100とインバンド制御サーバ300間の暗号化通信経路を確立する。更に、アウトオブバンド制御サーバ100は、制御メッセージ処理部140を利用し、経路情報150に基づいて、フローエントリ登録等に関する制御メッセージを生成し、制御チャンネル接続部130を経由して、制御メッセージをスイッチ200に送信する。
スイッチ200は、主にアウトオブバンド制御サーバの情報211から制御メッセージを受信しているため、制御サーバ情報管理部210に、少なくともアウトオブバンド制御サーバの情報211を登録する。スイッチ200は、制御チャンネル接続部230を利用して、既知のアウトオブバンド制御サーバ100に接続要求を送信する。スイッチ200は、アウトオブバンド制御サーバ100から受信した証明書を基づいて、スイッチ200とアウトオブバンド制御サーバ100間の共通鍵(共有鍵)を作成し、暗号化通信経路とアウトオブバンド制御チャンネルを確立する。ここでは、リンクとして使用されるスイッチ200のデータ転送用のネットワークと、アウトオブバンド制御チャンネルとして使用されるスイッチ200とアウトオブバンド制御サーバ100間のネットワークは、別々のネットワークであるものとする。スイッチ200は、アウトオブバンド制御チャンネルを、制御メッセージ専用の通信経路として利用する。
スイッチ200とアウトオブバンド制御サーバ100間にアウトオブバンド制御チャンネルが確立できたら、アウトオブバンド制御サーバ100から配下のスイッチ200に対して、インバンド制御サーバ300の情報212を通知し、スイッチ200のフローテーブル260に、インバンド制御サーバ300へのパケット転送を定義したフローエントリを登録する。このフローエントリは、制御メッセージ用フローエントリ261となり、プライオリティが最優先で、スイッチ200内部のフローテーブルからエージングアウトしないことを設定される。すなわち、アウトオブバンド制御サーバ100は、配下のスイッチ200のフローテーブル260に、インバンド制御サーバ300へパケットを転送して経路情報を問い合わせる旨のフローエントリを登録する。インバンド制御サーバ300がパケット転送経路上にある場合、インバンド制御サーバ300は、スイッチ200にとっては、パケットの転送先であり、制御サーバでもある。
スイッチ200は、受信したパケットのヘッダ情報と、この制御メッセージ用のフローエントリを利用して、他の通信データと混在している制御メッセージのパケットを抽出することで、自分宛の通信か、制御メッセージの中継かを判断する。また、スイッチ200は、受信したパケットのヘッダ情報と、この制御メッセージ用のフローエントリを、スイッチ200とインバンド制御サーバ300との通信用の経路を決定する際にも使用する。
図7は、スイッチ200のフローテーブル260に登録される制御メッセージ用フローエントリ261の例を示す。ここでは、制御メッセージ用フローエントリ261の例として、フローエントリ401〜404を示す。フローエントリ401は、インバンド制御サーバ300への接続用のフローエントリである。フローエントリ402は、インバンド制御サーバ300からスイッチ200宛のフローエントリである。フローエントリ403は、インバンド制御サーバ300からスイッチ200中継用のフローエントリである。フローエントリ404は、インバンド制御サーバ300用のフローエントリである。
アウトオブバンド制御サーバ100は、アウトオブバンド制御チャンネルを利用して、制御メッセージ用のフローエントリ401〜404を配下のスイッチ200のフローテーブル260に登録する。
アウトオブバンド制御サーバ100は、インバンド制御サーバ300への接続用のフローエントリ401のマッチフィールドに、インバンド制御サーバの宛先IPアドレス(Src IP)と制御メッセージ用のTCPポート(Src Port)を記録したものを、配下のスイッチ200のフローテーブル260に登録する。スイッチ200は、パケットヘッダから抽出した情報を、優先的にフローエントリのマッチフィールドとマッチングさせることで、インバンド制御サーバ300へのパケットを特定し、そのパケットをインバンド制御サーバ300へ送信する。逆に、インバンド制御サーバ300からのパケットを特定する場合には、フローエントリ402、403のマッチフィールドに、インバンド制御サーバ300の送信元IPアドレス(Src IP)と送信元の制御メッセージ用のTCPポート(Src Port)が記録されるため、スイッチ200は、混在している通信データのパケットに基づいて、自分宛か、制御メッセージの中継かを判断することができる。
図8は、スイッチ200内部の構成の詳細を示す。ここでは、特に、スイッチ200内部のフローテーブル260と、制御メッセージ用フローエントリ261、データプレーン用フローエントリ262の構成を示す。なお、図8で新たに示されたフロー転送部270は、制御メッセージのパケットと、他のパケットが混在したデータトラフィックを受信し、フローテーブル260内のフローエントリに基づいて、それぞれのパケットを転送する。また、インターフェース280は、アウトオブバンド制御チャンネル用の専用ポートと、インバンド制御チャンネル用の汎用ポートを有する。
図8では、アウトオブバンド制御チャンネルを経由する制御メッセージは、インターフェース280の専用ポートを経由して、フローテーブル260内のフローエントリとマッチングせず、直接に制御チャンネル接続部230へ送信される。しかし、インバンド制御チャンネルを経由する制御メッセージは、インターフェース280の汎用ポートを経由して、他のパケットと混在してスイッチ200のフロー転送部270に到着する。このとき、スイッチ200は、高優先の制御メッセージ用フローエントリ261を利用して、制御メッセージを特定し、自分宛の制御チャンネル接続部230に転送するか、その制御メッセージを中継するかを判断する。
スイッチ200は、制御サーバ情報管理部210にあるインバンド制御サーバ300の情報(IPアドレス等)と、制御メッセージ処理部240を利用して、制御チャンネル接続部230を経由して、インバンド制御サーバ300へ接続を要求する。インバンド制御サーバ300は、スイッチ200の認証を行い、許可されたスイッチ200に対し、証明書を送信する。スイッチ200は、インバンド制御サーバ300から受信した証明書から、スイッチ200とインバンド制御サーバ300間の共通鍵を作成し、暗号化通信経路とインバンド制御チャンネルを確立する。インバンド制御サーバ300は、インバンド配下スイッチ情報312として、スイッチの情報をスイッチ情報管理部310に保存する。
スイッチ200は、主にアウトオブバンド制御サーバ100から経路情報に基づくフローエントリ登録等に関する制御メッセージを受信しながら、アウトオブバンド制御サーバ100とインバンド制御サーバ300の状態を監視する。スイッチ200は、アウトオブバンド制御サーバ100の状態が異常を検出した場合、即時に、インバンド制御サーバ300へ切り替えることができる。
図9は、スイッチ情報管理部110やスイッチ情報管理部310に登録されるスイッチ情報の例を示す。ここでは、スイッチ情報管理部110に登録されるスイッチ情報として説明する。
スイッチ情報管理部110は、アウトオブバンド配下スイッチ情報111と、インバンド配下スイッチ情報112を持つ。アウトオブバンド配下スイッチ情報111は、スイッチID1111、1112と、証明書・公開鍵1113を含む。インバンド配下スイッチ情報112は、スイッチID1121、1122と、サーバ・サーバ間の共通鍵1123を含む。
図10は、制御サーバ情報管理部210に登録される制御サーバ情報の例を示す。
制御サーバ情報管理部210は、アウトオブバンド制御サーバの情報211と、インバンド制御サーバの情報212を持つ。アウトオブバンド制御サーバの情報211は、制御サーバのMACアドレス2111と、制御サーバのIPアドレス2112と、制御サーバのTCPポート番号2113と、サーバ・スイッチ間の共通鍵2114を含む。インバンド制御サーバの情報212は、制御サーバのMACアドレス2121と、制御サーバのIPアドレス2122と、制御サーバのTCPポート番号2123と、サーバ・スイッチ間の共通鍵2124を含む。
次に、図11〜図18に示すタイムチャートを使用して、本発明のネットワークシステムにおけるサーバ等の動作を説明する。
[アウトオブバンド制御サーバ側の動作]
図11は、アウトオブバンド制御サーバ100側の動作を示す。
(1)ステップS101
アウトオブバンド制御サーバ100は、インバンド制御サーバ300を選択する。
(2)ステップS102
アウトオブバンド制御サーバ100は、選択したインバンド制御サーバ300への接続を要求する。ここでは、アウトオブバンド制御サーバ100は、選択したインバンド制御サーバ300に、冗長制御サーバとしてのサービス提供を依頼する。
(3)ステップS103
アウトオブバンド制御サーバ100は、インバンド制御サーバ300から許可の応答があるか確認する。ここでは、アウトオブバンド制御サーバ100は、インバンド制御サーバ300から証明書を受信した場合、インバンド制御サーバ300から許可の応答があったと判断する。
(4)ステップS104
アウトオブバンド制御サーバ100は、インバンド制御サーバ300から許可の応答がなかった場合(ステップS103でNo)、他のインバンド制御サーバ300を選択し、改めて、選択したインバンド制御サーバ300への接続を要求する。
(5)ステップS105
アウトオブバンド制御サーバ100は、インバンド制御サーバ300から許可の応答があった場合(ステップS103でYes)、インバンド制御サーバ300からの証明書を利用して、共通鍵を作成し、アウトオブバンド制御サーバ100とインバンド制御サーバ300間の暗号化通信経路を確立する。
(6)ステップS106
アウトオブバンド制御サーバ100は、インバンド制御サーバ300に、配下のスイッチの情報(スイッチID)と、作成した共通鍵を通知する。
(7)ステップS107
アウトオブバンド制御サーバ100は、当該インバンド制御サーバ300の情報を配下のスイッチ200に通知する。
(8)ステップS108
アウトオブバンド制御サーバ100は、スイッチ200のフローテーブル260に、制御メッセージ用フローエントリ261を登録する。
[インバンド制御サーバ側の動作]
図12は、インバンド制御サーバ300側の動作を示す。
(1)ステップS201
インバンド制御サーバ300は、他の制御サーバからインバンド制御サーバ300としての接続要求を受信する。ここでは、要求元の制御サーバは、アウトオブバンド制御サーバ100とする。インバンド制御サーバ300は、アウトオブバンド制御サーバ100から、冗長制御サーバとしてのサービス提供依頼を受信する。
(2)ステップS202
インバンド制御サーバ300は、要求元の制御サーバに対し、インバンド制御サーバ300として接続許可するかどうかを判断する。
(3)ステップS203
インバンド制御サーバ300は、要求元の制御サーバに対し、インバンド制御サーバ300として接続許可しない場合、要求元の制御サーバに接続拒否を通知する。
(4)ステップS204
インバンド制御サーバ300は、要求元の制御サーバに対し、インバンド制御サーバ300として接続許可する場合、要求元の制御サーバに接続許可を通知し、証明書を送信する。
(5)ステップS205
インバンド制御サーバ300は、要求元の制御サーバから共通鍵を受信し、暗号化通信経路とサーバ・サーバ間の通信経路を確立する。ここでは、インバンド制御サーバ300は、アウトオブバンド制御サーバ100から、アウトオブバンド制御サーバ100で作成された共通鍵を受信し、アウトオブバンド制御サーバ100とインバンド制御サーバ300間の暗号化通信経路を確立する。
(6)ステップS206
また、インバンド制御サーバ300は、相手の制御サーバから受信したスイッチの情報を保存する。ここでは、インバンド制御サーバ300は、アウトオブバンド制御サーバ100から、配下のスイッチ200を示すスイッチIDを受信し、管理する。なお、インバンド制御サーバ300は、共通鍵とスイッチの情報(スイッチID)を同じタイミングで受信するようにしても良い。
[アウトオブバンド制御チャンネルの確立]
図13は、スイッチ200が既知のアウトオブバンド制御サーバ100に対して、TCPセッションを確認し、サーバから受信した証明書を利用して、公開鍵を生成し、暗号化通信経路とアウトオブバンド制御チャンネルを確立する際の動作を示す。
(1)ステップS301
スイッチ200は、既知のアウトオブバンド制御サーバ100に対して、TCPセッションを確立する。
(2)ステップS302
スイッチ200は、アウトオブバンド制御サーバ100から証明書を受信し、アウトオブバンド制御サーバ100とスイッチ200間の共通鍵を作成する。
(3)ステップS303
スイッチ200は、アウトオブバンド制御サーバ100とスイッチ200間の暗号化通信経路を確立する。
(4)ステップS304
スイッチ200は、アウトオブバンド制御サーバ100に接続要求を送信する。
(5)ステップS305
スイッチ200は、アウトオブバンド制御チャンネルを確立することができるか確認する。ここでは、スイッチ200は、アウトオブバンド制御サーバ100から、接続許可の応答があれば、アウトオブバンド制御チャンネルを確立することができると判断する。スイッチ200は、アウトオブバンド制御チャンネルを確立することができない場合、最初からやり直す。
(6)ステップS306
スイッチ200は、アウトオブバンド制御チャンネルを確立することができる場合、アウトオブバンド制御サーバ100とスイッチ200間のアウトオブバンド制御チャンネルを確立する。
[インバンド制御チャンネルの確立]
図14は、スイッチ200がアウトオブバンド制御チャンネルを確立した後、インバンド制御チャンネルを確立する際の動作を示す。
(1)ステップS401
スイッチ200は、スイッチ200とアウトオブバンド制御サーバ間に、アウトオブバンド制御チャンネルを確立する。この手順については、図13に示す。
(2)ステップS402
スイッチ200は、アウトオブバンド制御チャンネルが確立した後、アウトオブバンド制御サーバ100に、インバンド制御サーバ300の情報と、アウトオブバンド制御サーバ100とインバンド制御サーバ300間の共通鍵を要求する。
(3)ステップS403
スイッチ200は、アウトオブバンド制御サーバ100から、候補のインバンド制御サーバ300の情報を受信する。
(4)ステップS404
スイッチ200は、その候補のインバンド制御サーバ300に対し、自分のスイッチIDと、アウトオブバンド制御サーバ100とインバンド制御サーバ300間の共通鍵を送信し、インバンド制御サーバ300に接続要求する。
(5)ステップS405
スイッチ200は、インバンド制御サーバ300への接続が許可されたか確認する。ここでは、スイッチ200は、インバンド制御サーバ300から接続許可の応答を受信した場合、インバンド制御サーバ300への接続が許可されたと判断する。
(6)ステップS406
スイッチ200は、インバンド制御サーバ300から接続許可の応答を受信しなかった場合(ステップS405でNo)、アウトオブバンド制御サーバ100に「インバンド制御チャンネル確立不可」の旨を通知し、改めて、他のインバンド制御サーバ300の情報を要求する。
(7)ステップS407
スイッチ200は、インバンド制御サーバ300から接続許可の応答を受信した場合(ステップS405でYes)、スイッチ200とインバンド制御サーバ300間の暗号化通信経路を確立する。ここでは、スイッチ200は、インバンド制御サーバ300から、接続許可の応答として証明書を受信し、スイッチ200とインバンド制御サーバ300間の共通鍵を作成し、作成された共通鍵により、スイッチ200とインバンド制御サーバ300間の暗号化通信経路を確立する。
(8)ステップS408
スイッチ200は、スイッチ200とインバンド制御サーバ300間のインバンド制御チャンネルを確立する。
[インバンド制御サーバへのスイッチ情報の登録]
図15は、インバンド制御サーバ300のスイッチ200の情報の登録の際の動作を示す。
(1)ステップS501
インバンド制御サーバ300は、配下のスイッチ200からインバンド制御チャンネル確立の要求を受信する。
(2)ステップS502
インバンド制御サーバ300は、スイッチ200から要求を受信した際、スイッチ情報管理部310に、スイッチ200の情報が登録されているか確認する。ここで、以前、アウトオブバンド制御サーバ100とインバンド制御サーバ300の間に、スイッチ200の情報(スイッチID)を交換しているため、そのスイッチ200の情報(スイッチID)と、アウトオブバンド制御サーバ100とインバンド制御サーバ300間の共通鍵を参照して、スイッチ200の情報(スイッチID)の登録を受け入れるかを判断する。
(3)ステップS503
インバンド制御サーバ300は、スイッチ200の情報(スイッチID)が登録されていない場合(ステップS502でNo)、スイッチ200に対して、接続拒否を通知する。
(4)ステップS504
インバンド制御サーバ300は、スイッチ200の情報(スイッチID)が登録されている場合(ステップS502でYes)、アウトオブバンド制御サーバ100とインバンド制御サーバ300間の共通鍵が正しいか確認する。
(5)ステップS505
インバンド制御サーバ300は、アウトオブバンド制御サーバ100とインバンド制御サーバ300間の共通鍵が正しくない場合(ステップS504でNo)、スイッチ200に対して、接続拒否を通知する。
(6)ステップS506
インバンド制御サーバ300は、アウトオブバンド制御サーバ100とインバンド制御サーバ300間の共通鍵が正しい場合(ステップS504でYes)、スイッチ200に対して、接続許可を通知し、証明書を送付する。
(7)ステップS507
インバンド制御サーバ300は、証明書の送付に対する応答として、スイッチ200からスイッチ200とインバンド制御サーバ300間の共通鍵を受信し、スイッチ200とインバンド制御サーバ300間の共通鍵により、暗号化通信経路を確立する。
(8)ステップS508
インバンド制御サーバ300は、スイッチ200とインバンド制御サーバ300間のインバンド制御チャンネルを確立する。
[アウトオブバンド制御サーバとインバンド制御サーバの切り替え]
図16A、図16Bは、スイッチ200が、アウトオブバンド制御サーバ100からインバンド制御サーバ300への切り替え、或いはインバンド制御サーバ300からアウトオブバンド制御サーバ100への切り替えを行う際の動作を示す。
(1)ステップS601
スイッチ200は、アウトオブバンド制御サーバ100及びインバンド制御サーバ300の各々と接続した後、主にアウトオブバンド制御サーバ100から制御メッセージを受信する。
(2)ステップS602
スイッチ200は、アウトオブバンド制御サーバ100に対し、定期的に、状態監視用メッセージを送信する。
(3)ステップS603
スイッチ200は、アウトオブバンド制御サーバ100から状態監視用メッセージに対する応答があるか確認する。スイッチ200は、アウトオブバンド制御サーバ100から応答がある場合(ステップS603でYes)、アウトオブバンド制御サーバ100から状態監視に関する制御メッセージを受信する。
(4)ステップS604
スイッチ200は、アウトオブバンド制御サーバ100から応答がない場合(ステップS603でNo)、アウトオブバンド制御サーバ100が異常状態であると判断し、インバンド制御サーバ300を選択し、選択したインバンド制御サーバ300への切り替えを準備する。
(5)ステップS605
スイッチ200は、インバンド制御サーバ300に対し、切り替え通知を送信し、接続開始を要求し、インバンド制御サーバ300へ接続する。
(6)ステップS606
スイッチ200は、インバンド制御サーバ300へ接続した時点で、インバンド制御サーバ300から制御メッセージを受信することになる。スイッチ200は、インバンド制御サーバ300から制御メッセージを受信する。
(7)ステップS607
なお、インバンド制御サーバ300に接続中のスイッチ200でも、定期的に、アウトオブバンド制御サーバ100に対し、状態監視用メッセージを送信する。
(8)ステップS608
スイッチ200は、状態監視用メッセージに対し、アウトオブバンド制御サーバ100から応答があるか確認する。スイッチ200は、応答の有無により、アウトオブバンド制御サーバ100の状態を確認し、アウトオブバンド制御サーバ100が復旧したかを確認する。
(9)ステップS609
スイッチ200は、アウトオブバンド制御サーバ100から応答があり、復旧したことが確認できた場合(ステップS608のYes)、スイッチ200は即時にアウトオブバンド制御サーバ100に切り戻し、アウトオブバンド制御サーバ100から制御メッセージを受信する。
(10)ステップS610
スイッチ200は、アウトオブバンド制御サーバ100から応答がなく、復旧したことが確認できない場合(ステップS608のNo)、インバンド制御サーバ300に対し、状態監視用メッセージを送信する。
(11)ステップS611
スイッチ200は、状態監視用メッセージに対し、インバンド制御サーバ300から応答があるか確認する。スイッチ200は、インバンド制御サーバ300から応答がある場合(ステップS611でYes)、インバンド制御サーバ300から状態監視に関する制御メッセージを受信する。また、スイッチ200は、インバンド制御サーバ300から応答がない場合(ステップS611でNo)、インバンド制御サーバ300が異常状態だと判断し、他のインバンド制御サーバ300を選択し、選択したインバンド制御サーバ300への切り替えを準備する。
[制御メッセージ用フローエントリのマッチング]
図17は、インバンド制御サーバ300宛に、スイッチ200上に登録される制御メッセージ用フローエントリのマッチングの仕組みを示す。
(1)ステップS701
アウトオブバンド制御サーバ100は、スイッチ200に対し、インバンド制御サーバ300の情報を送信し、インバンド制御サーバ300へのフローエントリを登録する。その登録されたフローエントリは、制御メッセージ用フローエントリとなる。スイッチ200は、インバンド制御サーバ300への制御メッセージを生成し、制御メッセージのパケットを送信する。
(2)ステップS702
スイッチ200は、その制御メッセージのパケットのヘッダから抽出した検索キーを利用し、高優先の制御メッセージ用フローエントリとマッチングを行う。
(3)ステップS703
スイッチ200は、制御メッセージのパケットのヘッダから抽出した検索キーが、高優先の制御メッセージ用フローエントリとマッチするか確認する。
(4)ステップS704
スイッチ200は、マッチした場合(ステップS703でYes)、制御メッセージを、インバンド制御サーバ300へ送信する。
(5)ステップS705
スイッチ200は、マッチしなかった場合(ステップS703でNo)、制御メッセージのパケットのヘッダから抽出した検索キーが、他の制御メッセージ用フローエントリとマッチするか確認する。ここでは、スイッチ200は、制御メッセージのパケットのヘッダから抽出した検索キーを利用し、先にマッチングを行った制御メッセージ用フローエントリの次に高優先の制御メッセージ用フローエントリとマッチングを行う。スイッチ200は、マッチした場合、制御メッセージを、当該制御メッセージ用フローエントリに対応する制御サーバへ送信する。スイッチ200は、制御メッセージのパケットのヘッダから抽出した検索キーとマッチする制御メッセージ用フローエントリが存在しない場合、当該制御メッセージのパケットを破棄しても良い。
[パケット群からの制御メッセージの抽出]
図18は、スイッチ200上のフローテーブル上に、パケットと混載している制御メッセージを抽出する制御メッセージ用フローエントリのマッチングの仕組みを示す。
(1)ステップS801
スイッチ200は、パケットを受信する。
(2)ステップS802
スイッチ200は、受信したパケットのヘッダから抽出した検索キーを利用し、高優先の制御メッセージ用フローエントリとマッチングを行う。
(3)ステップS803
スイッチ200は、受信したパケットのヘッダから抽出した検索キーが、高優先の制御メッセージ用フローエントリとマッチするか確認する。
(4)ステップS804
スイッチ200は、マッチしなかった場合(ステップS803でNo)、受信したパケットのヘッダから抽出した検索キーが、他の制御メッセージ用フローエントリとマッチするか確認する。ここでは、スイッチ200は、受信したパケットのヘッダから抽出した検索キーを利用し、先にマッチングを行った制御メッセージ用フローエントリの次に高優先の制御メッセージ用フローエントリとマッチングを行う。スイッチ200は、マッチした場合、制御メッセージを、当該制御メッセージ用フローエントリに対応する制御サーバへ送信する。スイッチ200は、受信したパケットのヘッダから抽出した検索キーとマッチする制御メッセージ用フローエントリが存在しない場合、当該受信したパケットを破棄しても良い。
(5)ステップS805
スイッチ200は、マッチした場合(ステップS803でYes)、そのパケットが制御メッセージであるものと判断し、宛先が自分宛であるか確認する。
(6)ステップS806
スイッチ200は、宛先が自分宛でない場合(ステップS805でNo)、宛先に基づいて、他のスイッチへ制御メッセージを中継する。
(7)ステップS807
スイッチ200は、宛先が自分宛である場合(ステップS805でYes)、自分宛の制御メッセージを、自身の制御メッセージ処理部240に転送する。
<第2実施形態>
以下に、本発明の第2実施形態について説明する。
スイッチ200は、制御メッセージ処理のプロトコルにおいて、TCPの送信先ポート番号、又は送信元ポートが規定される場合(例えば、TCPポート番号が9999)、制御メッセージ検出用フローエントリを用いて、流れているデータトラフィックから制御メッセージを抽出することができる。
その制御メッセージを自分のアウトオブバンド制御サーバに送信し、アウトオブバンド制御サーバは、制御メッセージのヘッダから、他の制御サーバの送信元IPアドレスを抽出でき、他の制御サーバへの接続試行を行うことができる。
<本発明の特徴>
本発明は、パケットを転送するスイッチと経路を決定する制御サーバにおいて、アウトオブバンド制御サーバとインバンド制御サーバによって、制御チャンネルの冗長化を実現するものである。
本発明は、スイッチに対し、アウトオブバンド制御サーバから、インバンド制御サーバへ制御メッセージ用フローエントリを登録する仕組みとなっている。
本発明では、アウトオブバンド制御サーバとインバンド制御サーバの間でスイッチIDを交換する。
また、本発明では、インバンド制御サーバが他のスイッチを登録する。
更に、本発明では、制御メッセージ用フローエントリを用いて、パケットと混在している制御メッセージを抽出する。
本発明は、パケット転送手段(スイッチ)と経路情報決定手段(制御サーバ)が分離されたネットワークシステム等で利用することができる。
本発明においては、スイッチが主のアウトオブバンド制御サーバから制御メッセージを受信しながら、データトラフィックのネットワークを経由し、他の制御サーバをインバンド制御サーバとして利用することができる。
また、本発明においては、スイッチに対し、アウトオブバンド制御サーバから事前に接続依頼したインバンド制御サーバの情報を登録することで、スイッチは、信頼できる他の制御サーバ(インバンド制御サーバ)へ接続できる。
また、本発明においては、インバンド制御サーバは、事前に他のアウトオブバンド制御サーバからスイッチID及びサーバ・サーバ間の共通鍵を受信し、保存することで、スイッチから接続要求されたときに、当該スイッチの認証を行うことができる。
また、本発明においては、アウトオブバンド制御サーバからスイッチのフローテーブル用に対し、高優先度の制御メッセージ用フローエントリを登録することで、スイッチは、データトラフィックと混在している制御メッセージを抽出することができる。
また、本発明においては、制御メッセージ用のフローエントリにより、制御メッセージが優先的にマッチングされ、スイッチの制御メッセージ処理部への送信することができ、また、他のスイッチへの優先的に制御メッセージを中継することができる。
また、本発明においては、スイッチは、監視しているアウトオブバンド制御サーバに障害が発生した場合、一旦、アウトオブバンド制御サーバからインバンド制御サーバへ切り替え、インバンド制御サーバから制御メッセージを受信するが、常時、切り替え前のアウトオブバンド制御サーバを監視することで、アウトオブバンド制御サーバが復旧したとき、即時に切り替え戻すことができる。
<まとめ>
以上のように、本発明は、パケットを転送するスイッチと、経路情報を決定する制御サーバが分離されたネットワークシステムにおいて、スイッチが制御サーバから経路情報に基づくフローエントリ登録等に関する制御メッセージを受信する場合に、アウトオブバンド制御チャンネルとインバンド制御チャンネルによる制御チャンネルの冗長化を実現する構成にしたことを特徴としている。
図1において、パケットを転送するスイッチと経路を決定する制御サーバを構成するデータプレーンとコントロールプレーンの分離したネットワークシステムを示す。ここで、スイッチと制御サーバ間では、制御メッセージを送受信する制御チャンネルで接続されている。
図5において、スイッチは経路情報を決定するために、アウトオブバンド制御チャンネルで制御サーバとの接続されることだけではなく、通常のデータ通信用の経路を利用し、ネットワーク経由で、他の制御サーバと接続することができるインバンド制御チャンネルを構築することで、制御チャンネルを冗長する。なお、アウトオブバンド制御チャンネルでは、制御メッセージ専用の通信路を利用する。また、インバンド制御チャンネルでは、通信データと制御メッセージで同じ通信路を共同利用する。
このようにして、本発明では、スイッチが、アウトオブバンド制御チャンネルとインバンド制御チャンネルにより制御メッセージを送受信するので、制御チャンネルの冗長化を実現することができる。
図6A、図6Bは、パケットを転送するスイッチと経路情報を管理・決定する制御サーバから構成になるネットワークシステムを示す。
スイッチは、初期設定で主に制御メッセージを受信する制御サーバと接続するためには、データ転送用のネットワークとは別に、アウトオブバンド制御チャンネルで接続され、スイッチにとって、その制御サーバは、アウトオブバンド制御サーバとなる。
アウトオブバンド制御サーバは、ネットワーク上に存在している既知又は設定される他の制御サーバに制御チャンネルの冗長構成を依頼する。依頼された他の制御サーバは、スイッチにとって、インバンド制御サーバとなる。
アウトオブバンド制御サーバは、冗長制御サーバ管理部を利用して、アウトオブバンド制御サーバとインバンド制御サーバ間の暗号化通信経路を構築、その経路を通じて、自分が管理しているスイッチの情報を相手のインバンド制御サーバに通知する。
更に、アウトオブバンド制御サーバは、自分が管理しているスイッチに対し、インバンド制御サーバの情報を通知する。
スイッチは、アウトオブバンド制御サーバから受信したインバンド制御サーバの情報を基に、インバンド制御サーバに対し、スイッチの登録を依頼する。インバンド制御サーバは、事前にアウトオブバンド制御サーバから受信したスイッチの情報を基に、スイッチの認証を行い、スイッチを登録する。スイッチは、インバンド制御サーバから登録された後、主に制御メッセージを受信するアウトオブバンド制御サーバと共に、インバンド制御サーバの状態を監視する。
スイッチは、常時監視しているアウトオブバンド制御サーバから応答がない場合、アウトオブバンド制御サーバに異常が発生したこと判断し、アウトオブバンド制御サーバからインバンド制御サーバへ切り替えし、インバンド制御サーバから制御メッセージを受信する。
このようにして、スイッチは、主に受信したアウトオブバンド制御サーバと他の制御サーバ(インバンド制御サーバ)から冗長された制御チャンネルから制御メッセージを受信することができる。
<補足>
本発明の特徴は、アウトオブバンド制御チャンネルとインバンド制御チャンネルによる冗長構成と、アウトオブバンド制御チャンネルからのインバンド制御チャンネルの接続性の確立と、アウトオブバンド制御チャンネルとインバンド制御チャンネルの選択と、アウトオブバンド制御チャンネルとインバンド制御チャンネルの切り替えの方式にある。
本発明では、アウトオブバンド制御サーバが、スイッチとアウトオブバンドで制御チャンネルを構成・確立し、スイッチとインバンド制御サーバ間の制御チャンネル用の経路情報(フローテーブル)を設定する。
そして、スイッチが、インバンド制御サーバとの制御チャンネルを構成・確立し、アウトオブバンド制御サーバとインバンド制御サーバで(双方を用いて)、制御サーバの冗長構成を構築する。また、スイッチが、制御チャンネルの障害を監視して、障害発生時にアクティブ(主系・本番系)の制御チャンネルから、スタンバイ(待機系・予備系)の制御チャンネルに切り替える。
以上、本発明の実施形態を詳述してきたが、実際には、上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の変更があっても本発明に含まれる。
なお、本出願は、日本出願番号2010−000819に基づく優先権を主張するものであり、日本出願番号2010−000819における開示内容は引用により本出願に組み込まれる。

Claims (11)

  1. パケットを転送するスイッチと、
    前記スイッチに対し、アウトオブバンド制御チャンネルを経由して制御メッセージを送信し、経路情報を決定するアウトオブバンド制御サーバと、
    前記スイッチに対し、インバンド制御チャンネルを経由して制御メッセージを送信し、経路情報を決定するインバンド制御サーバと
    を含み、
    前記スイッチは、前記アウトオブバンド制御チャンネル及び前記インバンド制御チャンネルのうち、アクティブの制御チャンネルから、スタンバイの制御チャンネルに切り替えることを特徴とする
    ネットワークシステム。
  2. 請求項1に記載のネットワークシステムであって、
    前記アウトオブバンド制御サーバは、
    前記スイッチとの間で前記アウトオブバンド制御チャンネルを確立する手段と、
    前記スイッチと前記インバンド制御サーバとの間の前記インバンド制御チャンネル用の経路情報を設定する手段と
    を具備する
    ネットワークシステム。
  3. 請求項1又は2に記載のネットワークシステムであって、
    前記スイッチは、
    前記アウトオブバンド制御チャンネルと前記インバンド制御チャンネルとの双方の制御チャンネルの障害を監視する手段を更に備え、
    前記スイッチは、
    障害発生時に、前記アウトオブバンド制御チャンネル及び前記インバンド制御チャンネルのうち、アクティブの制御チャンネルから、スタンバイの制御チャンネルに切り替え
    ネットワークシステム。
  4. 請求項1乃至のいずれか一項に記載のネットワークシステムにおいて、スイッチ、アウトオブバンド制御サーバ、並びにインバンド制御サーバのうち少なくとも1つとして使用される計算機。
  5. スイッチにより、パケットを転送することと、
    アウトオブバンド制御サーバから前記スイッチに対し、アウトオブバンド制御チャンネルを経由して制御メッセージを送信し、経路情報を決定することと、
    インバンド制御サーバから前記スイッチに対し、インバンド制御チャンネルを経由して制御メッセージを送信し、経路情報を決定することと
    前記スイッチにより、前記アウトオブバンド制御チャンネル及び前記インバンド制御チャンネルのうち、アクティブの制御チャンネルから、スタンバイの制御チャンネルに切り替えることと
    を含む
    ネットワーク冗長化方法。
  6. 請求項に記載のネットワーク冗長化方法であって、
    前記アウトオブバンド制御サーバにより、前記スイッチとの間で前記アウトオブバンド制御チャンネルを確立することと、
    前記アウトオブバンド制御サーバにより、前記スイッチと前記インバンド制御サーバとの間の前記インバンド制御チャンネル用の経路情報を設定することと
    を含む
    ネットワーク冗長化方法。
  7. 請求項5又は6に記載のネットワーク冗長化方法であって、
    前記スイッチにより、前記アウトオブバンド制御チャンネルと前記インバンド制御チャンネルとの双方の制御チャンネルの障害を監視することと、
    前記スイッチにより、障害発生時に、前記アウトオブバンド制御チャンネル及び前記インバンド制御チャンネルのうち、アクティブの制御チャンネルから、スタンバイの制御チャンネルに切り替えることと
    を更に含む
    ネットワーク冗長化方法。
  8. 請求項5乃至7のいずれか一項に記載のネットワーク冗長化方法を、スイッチ、アウトオブバンド制御サーバ、及びインバンド制御サーバの各々として機能する計算機に実行させるためのプログラムを記憶した記憶媒体。
  9. パケットを転送するスイッチであって、
    アウトオブバンド制御サーバとの間で第一の制御メッセージを交換するためのアウトオブバンド制御チャネルを確立する第一の手段と、
    インバンド制御サーバとの間で第二の制御メッセージを交換するためのインバンド制御チャネルを確立する第二の手段とを含み、
    前記第一の手段は、前記アウトオブバンド制御サーバから、前記アウトオブバンド制御チャンネルを介して、前記インバンド制御チャンネルを確立するための制御情報を受信し、
    前記第二の手段は、前記制御情報に応じて、前記第二の制御メッセージを特定することを特徴とする
    スイッチ。
  10. インバンド制御サーバとの間で第一の制御メッセージを交換するためのインバンド制御チャネルを確立することが可能なスイッチとの間に、第二の制御メッセージを交換するためのアウトオブバンド制御チャネルを確立する手段を含み、
    前記インバンド制御チャンネルを確立し、前記第二の制御メッセージを特定するための制御情報を、前記アウトオブバンド制御チャンネルを介して前記スイッチに送信することを特徴とする
    制御サーバ。
  11. アウトオブバンド制御サーバとの間で第一の制御メッセージを交換するためのアウトオブバンド制御チャネルを確立することが可能なスイッチとの間に、第二の制御メッセージを交換するためのインバンド制御チャネルを確立する手段を含み、
    前記アウトオブバンド制御チャンネルを介して、前記第二の制御メッセージを特定するための制御情報を受信した前記スイッチからの要求に応じて、前記インバンド制御チャンネルを確立することを特徴とする
    制御サーバ。
JP2011548999A 2010-01-05 2011-01-04 ネットワークシステム、及びネットワーク冗長化方法 Active JP5641444B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011548999A JP5641444B2 (ja) 2010-01-05 2011-01-04 ネットワークシステム、及びネットワーク冗長化方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2010000819 2010-01-05
JP2010000819 2010-01-05
JP2011548999A JP5641444B2 (ja) 2010-01-05 2011-01-04 ネットワークシステム、及びネットワーク冗長化方法
PCT/JP2011/050016 WO2011083785A1 (ja) 2010-01-05 2011-01-04 ネットワークシステム、及びネットワーク冗長化方法

Publications (2)

Publication Number Publication Date
JPWO2011083785A1 JPWO2011083785A1 (ja) 2013-05-13
JP5641444B2 true JP5641444B2 (ja) 2014-12-17

Family

ID=44305521

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011548999A Active JP5641444B2 (ja) 2010-01-05 2011-01-04 ネットワークシステム、及びネットワーク冗長化方法

Country Status (10)

Country Link
US (1) US9124517B2 (ja)
EP (1) EP2523403B1 (ja)
JP (1) JP5641444B2 (ja)
KR (1) KR101476014B1 (ja)
CN (1) CN102714627B (ja)
CA (1) CA2786427A1 (ja)
ES (1) ES2523038T3 (ja)
RU (1) RU2526719C2 (ja)
TW (1) TWI482462B (ja)
WO (1) WO2011083785A1 (ja)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9185053B2 (en) * 2011-11-09 2015-11-10 Honeywell International Inc. Virtual fault tolerant ethernet appliance and method of operation
US10270652B2 (en) * 2012-04-25 2019-04-23 Hewlett Packard Enterprise Development Lp Network management
US9923831B2 (en) * 2012-11-29 2018-03-20 Futurewei Technologies, Inc. Packet prioritization in a software-defined network implementing OpenFlow
CN103067476B (zh) * 2012-12-25 2015-08-19 浙江大学 一种基于虚拟机的动态网络重构方法
WO2014104278A1 (ja) * 2012-12-28 2014-07-03 日本電気株式会社 制御装置、制御装置の制御方法及びプログラム
JP5503762B1 (ja) * 2013-02-19 2014-05-28 三菱電機インフォメーションシステムズ株式会社 オープンフローネットワークシステム
WO2014132967A1 (ja) * 2013-02-26 2014-09-04 日本電気株式会社 通信システム、スイッチ、制御装置、制御用チャネルの構築方法及びプログラム
CN104348819A (zh) * 2013-08-07 2015-02-11 上海宽带技术及应用工程研究中心 一种软件定义网络中的防火墙***及其实现方法
CN104426789B (zh) 2013-08-23 2017-08-11 新华三技术有限公司 软件定义网络中的转发设备控制方法及设备
WO2015045275A1 (ja) * 2013-09-26 2015-04-02 日本電気株式会社 制御装置、ネットワークシステム、パケット転送制御方法、制御装置用プログラム
CN104580025B (zh) * 2013-10-18 2018-12-14 华为技术有限公司 用于开放流网络中建立带内连接的方法和交换机
CN108183861B (zh) * 2013-10-26 2021-09-07 华为技术有限公司 Sdn交换机获取精确流表项方法及sdn交换机、控制器、***
US10212083B2 (en) 2013-10-30 2019-02-19 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Openflow data channel and control channel separation
JP6252158B2 (ja) * 2013-12-17 2017-12-27 富士通株式会社 通信システム、通信装置および通信方法
US8989199B1 (en) 2014-02-24 2015-03-24 Level 3 Communications, Llc Control device discovery in networks having separate control and forwarding devices
JP6287518B2 (ja) 2014-04-14 2018-03-07 富士通株式会社 オープンフロースイッチおよびオープンフローネットワークの障害復旧方法
JP6333056B2 (ja) * 2014-05-14 2018-05-30 APRESIA Systems株式会社 中継システムおよびスイッチ装置
US9686140B2 (en) * 2014-07-02 2017-06-20 Verizon Patent And Licensing Inc. Intelligent network interconnect
US11212321B2 (en) * 2014-08-18 2021-12-28 Nokia Solutions and Network OY Group communication service enabler security
KR102251407B1 (ko) * 2014-09-03 2021-05-12 주식회사 케이티 소프트웨어 정의 네트워크에서 컨트롤러의 이중화 제어 시스템 및 그 방법
CN104270270B (zh) * 2014-09-28 2018-03-30 国家电网公司 一种中高端机架式大容量设备通信管理方法
JP6378633B2 (ja) * 2015-02-04 2018-08-22 日本電信電話株式会社 伝送パス管理制御システム、伝送パス管理制御方法および制御プログラム
RU2681354C1 (ru) 2015-03-12 2019-03-06 Хуавэй Текнолоджиз Ко., Лтд. Способ передачи данных, устройство передачи данных, процессор и мобильный терминал
CN104702509B (zh) * 2015-03-31 2019-02-19 新华三技术有限公司 一种隔离sdn协议报文和数据报文的方法及装置
CN105450626A (zh) * 2015-09-08 2016-03-30 陈鸣 一种软件定义的网络鉴别***和方法
CN105827665A (zh) * 2016-06-06 2016-08-03 南开大学 一种sdn网络控制器与交换机之间的流表消息敏感数据加密方法
US10439932B2 (en) * 2016-10-05 2019-10-08 Avago Technologies International Sales Pte. Limited System and method for flow rule management in software-defined networks
JP7091923B2 (ja) * 2018-08-07 2022-06-28 日本電信電話株式会社 転送装置、転送方法及びプログラム
CN110289940A (zh) * 2019-06-12 2019-09-27 四川商通实业有限公司 定向支付客户端自动切换服务器的方法
TWI786472B (zh) * 2020-11-24 2022-12-11 迅得機械股份有限公司 去伺服化機台之自動化備援系統
CN112486896A (zh) * 2020-11-30 2021-03-12 锐捷网络股份有限公司 机架式交换机的业务卡管理装置及方法、设备和介质
CN112822114B (zh) * 2021-04-19 2021-07-02 军事科学院***工程研究院网络信息研究所 一种基于行为树的路由控制方法、***和介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002344409A (ja) * 2001-05-15 2002-11-29 Nec Corp 遠隔管理機能付き多重信号伝送システム
JP2004235791A (ja) * 2003-01-29 2004-08-19 Fujitsu Access Ltd 伝送装置の設定変更方法
JP2009200721A (ja) * 2008-02-20 2009-09-03 Nippon Telegr & Teleph Corp <Ntt> 機能分散型パケット転送システムおよびその制御方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5944823A (en) * 1996-10-21 1999-08-31 International Business Machines Corporations Outside access to computer resources through a firewall
JP2000078194A (ja) 1998-09-01 2000-03-14 Hitachi Ltd ネットワークシステム
JP3699051B2 (ja) 2002-03-15 2005-09-28 株式会社エヌ・ティ・ティ・ドコモ 自律システム、通信制御方法、およびサーバ
US7610351B1 (en) * 2002-05-10 2009-10-27 Oracle International Corporation Method and mechanism for pipelined prefetching
WO2006115536A2 (en) * 2005-04-22 2006-11-02 Nortel Networks Limited Method and apparatus for providing integrated symmetric and asymmetric network capacity on an optical network
JP4642679B2 (ja) 2006-03-14 2011-03-02 富士通株式会社 無線通信装置及び無線通信方法
CN1946058A (zh) 2006-10-28 2007-04-11 武汉市中光通信公司 适用于软交换网络的软交换设备异地容灾***及其方法
CN101202705A (zh) 2007-08-14 2008-06-18 华为技术有限公司 增强组播可靠性的方法和路由器
US9005034B2 (en) * 2008-04-30 2015-04-14 Bally Gaming, Inc. Systems and methods for out-of-band gaming machine management

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002344409A (ja) * 2001-05-15 2002-11-29 Nec Corp 遠隔管理機能付き多重信号伝送システム
JP2004235791A (ja) * 2003-01-29 2004-08-19 Fujitsu Access Ltd 伝送装置の設定変更方法
JP2009200721A (ja) * 2008-02-20 2009-09-03 Nippon Telegr & Teleph Corp <Ntt> 機能分散型パケット転送システムおよびその制御方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
CSND199900605013; 小林鉄生: '"初心者でも分かるSWハブ・カタログの読み方第3回 機能編(その2)"' 日経オープンシステム 第72号 , 19990305, pp.198〜207, 日経BP社 *
CSND200200619006; Glenn Sullivan: '"長距離SANの構築"' UNIX MAGAZINE 第15巻 第4号 , 20000401, pp.133〜137, 株式会社アスキー *
CSND201000023032; '"人と地球にやさしい情報社会の実現に向けたNEC中央研究所の取組み"' BUSINESS COMMUNICATION 第47巻 第1号 , 20100101, pp.111〜113, 株式会社ビジネスコミュニケーション社 *
JPN6014003315; 小林鉄生: '"初心者でも分かるSWハブ・カタログの読み方第3回 機能編(その2)"' 日経オープンシステム 第72号 , 19990305, pp.198〜207, 日経BP社 *
JPN6014003317; Glenn Sullivan: '"長距離SANの構築"' UNIX MAGAZINE 第15巻 第4号 , 20000401, pp.133〜137, 株式会社アスキー *
JPN6014003319; '"人と地球にやさしい情報社会の実現に向けたNEC中央研究所の取組み"' BUSINESS COMMUNICATION 第47巻 第1号 , 20100101, pp.111〜113, 株式会社ビジネスコミュニケーション社 *

Also Published As

Publication number Publication date
US20130077481A1 (en) 2013-03-28
EP2523403A4 (en) 2013-08-07
EP2523403B1 (en) 2014-08-20
EP2523403A1 (en) 2012-11-14
ES2523038T3 (es) 2014-11-20
CA2786427A1 (en) 2011-07-14
KR20120101524A (ko) 2012-09-13
US9124517B2 (en) 2015-09-01
TW201145912A (en) 2011-12-16
CN102714627B (zh) 2016-04-20
KR101476014B1 (ko) 2014-12-23
WO2011083785A1 (ja) 2011-07-14
TWI482462B (zh) 2015-04-21
CN102714627A (zh) 2012-10-03
RU2012133438A (ru) 2014-03-20
JPWO2011083785A1 (ja) 2013-05-13
RU2526719C2 (ru) 2014-08-27

Similar Documents

Publication Publication Date Title
JP5641444B2 (ja) ネットワークシステム、及びネットワーク冗長化方法
JP5382451B2 (ja) フロントエンドシステム、フロントエンド処理方法
US20120250496A1 (en) Load distribution system, load distribution method, and program
WO2013150925A1 (ja) ネットワークシステム、コントローラ、及びパケット認証方法
CN104541483B (zh) 用于连接性故障时为家庭网络启用重新路由的方法和***
JP2016534671A (ja) ローカルエリアネットワーク間の仮想プライベートネットワークを確立するための方法及びシステム
JP4882026B2 (ja) 通信システム及び通信制御装置
JP5464232B2 (ja) セキュア通信システム及び通信装置
CN113225252B (zh) 双向转发检测bfd会话的建立方法、处理方法以及相关设备
US20150256455A1 (en) Communication system, path information exchange apparatus, communication node, forwarding method for path information and program
JPWO2014084198A1 (ja) ストレージエリアネットワークシステム、制御装置、アクセス制御方法及びプログラム
US9602352B2 (en) Network element of a software-defined network
JP4011528B2 (ja) ネットワーク仮想化システム
JP5670279B2 (ja) 仮想ネットワーク制御装置、仮想ネットワーク制御方法、仮想ネットワーク制御システム、及びプログラム
JP2014003408A (ja) 中継転送システム、経路制御装置およびエッジ装置
JP2011160286A (ja) 呼制御サーバ、中継サーバ、vpn装置、vpn通信システム、vpnネットワーキング方法、プログラム、及び記憶媒体
JP5889122B2 (ja) 制御ノード及び通信制御方法
WO2014119602A1 (ja) 制御装置、スイッチ、通信システム、スイッチの制御方法及びプログラム
WO2024152689A1 (zh) 参数通告方法、装置、设备及***
JP6033393B2 (ja) 制御ノード及び通信制御方法
JP3887301B2 (ja) フレーム転送ネットワーク
CN114124617A (zh) 一种通信方法、装置、设备及***
CN118368342A (zh) 参数通告方法、装置、设备及***

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130624

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130821

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140318

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141016

R150 Certificate of patent or registration of utility model

Ref document number: 5641444

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150