JP5743906B2 - 通信制御システム - Google Patents

通信制御システム Download PDF

Info

Publication number
JP5743906B2
JP5743906B2 JP2011549000A JP2011549000A JP5743906B2 JP 5743906 B2 JP5743906 B2 JP 5743906B2 JP 2011549000 A JP2011549000 A JP 2011549000A JP 2011549000 A JP2011549000 A JP 2011549000A JP 5743906 B2 JP5743906 B2 JP 5743906B2
Authority
JP
Japan
Prior art keywords
entry
communication device
control server
control
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.)
Expired - Fee Related
Application number
JP2011549000A
Other languages
English (en)
Other versions
JPWO2011083786A1 (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 JP2011549000A priority Critical patent/JP5743906B2/ja
Publication of JPWO2011083786A1 publication Critical patent/JPWO2011083786A1/ja
Application granted granted Critical
Publication of JP5743906B2 publication Critical patent/JP5743906B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/18Loop-free operations
    • 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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/48Routing tree calculation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables

Landscapes

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

Description

本発明は、通信制御システムに関し、特にパケットを転送する通信機器と経路情報を決定する制御サーバーが分離された通信制御システムに関する。
TCP/IP(Transmission Control Protocol/Internet Protocol)やIEEE802.1におけるネットワークの経路制御は、通信機器間での経路情報の交換による自律的な経路制御が行われる手法が一般的である。
一方で、通信機器間の自律的な経路制御では、通信機器間の経路情報が一時的な不一致となることで、ネットワークの信頼性が低下する問題があった。
この問題に対応する手法として、特許文献1(US 2006/0092974 A1)に、通信機器から制御部を分離して、その制御部を実装した制御サーバーから、制御部のない複数の通信機器を遠隔で制御する手法が開示されている。また、制御サーバーで複数の通信機器の経路を制御することにより、複数の通信機器間で経路情報を交換することによる自律的な経路制御より、信頼性の高い経路制御が実現できることも知られている。
また、非特許文献1には、制御サーバーから通信機器を制御するプロトコルとして、オープンフロープロトコル(OpenFlow Protocol)が開示されている。オープンフロープロトコルによると、通信機器は、フローテーブルと呼ばれる転送テーブルを有し、制御サーバーは、通信機器の転送テーブルにエントリ(entry)を追加・書換・削除することができる。
なお、フローテーブルとは、所定のマッチ条件(ルール)に適合するパケットに対して行うべき所定の処理(アクション)を定義したエントリが登録されるテーブルである。ルールに適合するパケット群(パケット系列)をフローと呼ぶ。フローのルールは、パケットの各プロトコル階層のヘッダ領域に含まれる宛先アドレス(Destination Address)、送信元アドレス(Source Address)、宛先ポート(Destination Port)、送信元ポート(Source Port)のいずれか又は全てを用いた様々な組み合わせにより定義され、区別可能である。なお、上記のアドレスには、MACアドレス(Media Access Control Address)やIPアドレス(Internet Protocol Address)を含むものとする。また、上記に加えて、入口ポート(Ingress Port)の情報も、フローのルールとして使用可能である。
また、通信機器は、所定の検索情報について、通信機器を経由するトラフィックと、転送テーブルに登録されたエントリをマッチングし、両方に含まれる検索情報(例えば宛先IPアドレス)が一致すると、当該トラフィックをエントリに従った経路に転送する。オープンフロープロトコル等を用いて、ネットワークの経路制御を制御サーバーから行うことが可能である。
しかしながら、制御サーバーからの通信機器の遠隔制御を行う場合、既知の手法により、通信機器が交換することによって発生する経路情報の発振の抑制は可能となるが、制御サーバーから通信機器の転送テーブルにエントリを書き込むタイミングによっては、トラフィックのループや廃棄が意図せず発生する可能性がある。
例えば、制御サーバーで計算された転送経路に関係なく任意の通信機器の転送テーブルにエントリを書く場合について説明する。
図1を例にとると、通信機器102Aにおいて、検索情報として、ある転送テーブルのエントリが通信機器102Bを出力先として登録された時に、既に通信機器102Bにおいて、その検索情報を包含する転送テーブルのエントリが通信機器102Aを出力先として登録されている場合、条件に一致するトラフィックは、通信機器102Aと通信機器102Bの間で何度も往復することになる。
例えば、通信機器102Aにおいて、検索情報として、宛先IPアドレス「192.168.0.1/32」(「/32」は、ネットワークアドレス長を示す)をヘッダ情報に持つパケットは通信機器102Bを出力先とする旨のエントリが登録されたとする。このとき、既に、通信機器102Bにおいて、宛先IPアドレス「192.168.0.0/8」をヘッダ情報に持つパケットは通信機器102Aを出力先とする旨のエントリが登録されている場合、IPアドレス「192.168.0.1/32」宛のトラフィックは、通信機器102Aと通信機器102Bの間で何度も往復することになる。
また、例えば、制御サーバーで計算された転送経路に関係なく任意の通信機器102の転送テーブルにエントリを書く場合について説明する。
図1を例にとると、通信機器102Aにおいて、ある転送テーブルのエントリが通信機器102Bを出力先として登録した後に、通信機器102Bにおいて、新規の転送テーブルのエントリが登録できない場合、条件に一致するトラフィックは、通信機器102Bで廃棄されることになる。
例えば、通信機器102Aにおいて、検索情報として宛先IPアドレス「192.168.0.1/32」をヘッダ情報に持つパケットは通信機器102Bを出力先とする旨のエントリが登録された後に、通信機器102Bにおいて、新規の転送テーブルのエントリが登録できない場合、IPアドレス「192.168.0.1/32」宛のトラフィックは、通信機器102Bで廃棄されることになる。
非特許文献1のオープンフロープロトコルにより制御される転送テーブルは、図3に示す通り、検索優先度が存在する。トラフィックは、低い検索優先度のエントリの検索情報に一致するとしても、より高い検索優先度のエントリの検索情報に一致する場合、より高い検索優先度のエントリに従って、転送される。
また、例えば、トラフィックを受信する端末側に近い通信機器102から、通信経路を逆順に辿るように通信機器102に対して転送テーブルにエントリを登録する場合について説明する。
図1を例にとると、通信機器102D、102B、102Aの順に通信テーブルのエントリが登録される。しかし、既に、通信機器102Bの転送テーブルにおいて、新たに登録されるエントリの検索情報を包含する転送テーブルのエントリが、新たに登録されるエントリより高い検索優先度で登録されているとする。この場合、通信機器102Bにおいて、検索情報として低い検索優先度で通信機器102Dを出力先として新たなエントリが登録されても、新たに登録されたエントリは、トラフィックの検索結果には使用されないため、通信機器102Aにおいて、検索情報として通信機器102Bを出力先としてエントリが登録されると、条件に一致するトラフィックは、通信機器102Aと102Bの間で何度も往復することになる。
例えば、通信機器102Bの転送テーブルにおいて、既に、IPアドレス「192.168.0.0/8」宛のトラフィックに関するエントリが、新たに登録されるエントリより高い検索優先度で登録されているとする。この場合、通信機器102Bにおいて、検索情報として、宛先IPアドレス「192.168.0.1/32」をヘッダ情報に持つパケットは低い検索優先度で通信機器102Dを出力先とする旨の新たなエントリが登録されても、新たに登録されたエントリは、トラフィックの検索結果には使用されないため、通信機器102Aにおいて、検索情報として、宛先IPアドレス「192.168.0.1/32」をヘッダ情報に持つパケットは通信機器102Bを出力先とする旨のエントリが登録されると、条件に一致するトラフィックは、通信機器102Aと102Bの間で何度も往復することになる。
US 2006/0092974 A1
OpenFlow Switch Specification Version 0.9.0(Wire Protocol 0x98) July 20, 2009 Current Maintainer: Brandon Heller(brandonh@stanford.edu) <http://www.openflowswitch.org/documents/openflow−spec−v0.9.0.pdf>
本発明は、従来の問題を解決し、制御サーバーからの通信機器の転送テーブルのエントリ等の登録・書換・削除を行う時における、通信機器間での状態不一致、並びに意図しないトラフィックのループや廃棄を抑止することを目的とする。
本発明の通信制御システムは、複数の通信機器と、制御サーバーとを含む。複数の通信機器の各々は、受信したトラフィックと、転送テーブルに登録されたエントリとをマッチングし、当該トラフィックに包含される情報と当該エントリに包含される情報とが一致すると、当該トラフィックを、当該エントリに規定された経路に転送する。制御サーバーは、各通信機器が持つ転送テーブルにエントリを登録し、各通信機器に対して経路情報を決定する。ここでは、各通信機器は、制御サーバーからの一連の制御指示に対して、制御サーバーからの制御指示内容の検証を行い、検証結果を保持する。また、制御サーバーは、各通信機器から検証結果を取得し、各通信機器からの検証結果を基にして、各通信機器において一連の制御が実行可能かどうか判断し、一連の制御が実行可能であれば、各通信機器に対して一連の制御の実行を促す。なお、通信機器、並びに制御サーバーは、計算機であるものとする。
本発明の通信制御方法では、制御サーバーから、複数の通信機器の各々が持つ転送テーブルにエントリを登録し、各通信機器に対して経路情報を決定する。また、各通信機器において、受信したトラフィックと、転送テーブルに登録されたエントリとをマッチングし、当該トラフィックに包含される情報と当該エントリに包含される情報とが一致すると、当該トラフィックを、当該エントリに規定された経路に転送する。また、各通信機器において、制御サーバーからの一連の制御指示に対して、制御サーバーからの制御指示内容の検証を行い、検証結果を保持する。また、制御サーバーにおいて、各通信機器から検証結果を取得し、各通信機器からの検証結果を基にして、各通信機器において一連の制御が実行可能かどうか判断し、一連の制御が実行可能であれば、各通信機器に対して一連の制御の実行を促す。
本発明のプログラムは、通信機器、並びに制御サーバーの各々として機能する計算機に、上記の通信制御方法を実行させるためのプログラムである。なお、本発明のプログラムは、記憶装置や記憶媒体に格納することが可能である。
パケットを転送する通信機器と、経路情報を決定する制御サーバーが分離された通信制御システムにおいて、通信の信頼性を向上することができる。
ネットワークの構成例を示す図である。 通信機器の構成例を示す図である。 検索優先度順にエントリを並べた転送テーブルの例を示すである。 転送テーブルの構成例を示す図である。 トランザクション状態テーブルの構成例を示す図である。 転送テーブルへのエントリ登録の際の動作(待機あり)を示すフローチャートである。 転送テーブルへのエントリ登録の際の動作(待機なし)を示すフローチャートである。 複数の制御サーバーを有するネットワークにおける通信機器の構成例を示す図である。 複数の制御サーバーを有するネットワークにおけるトランザクション状態テーブルの構成例を示す図である。
<第1実施形態>
以下に、本発明の第1実施形態について添付図面を参照して説明する。
[ネットワークシステムの構成]
図1は、本発明が実施されるネットワークシステムの構成例を示すものである。
このネットワークシステムは、制御サーバー101と、通信機器102と、端末103を含む。ここでは、通信機器102として、通信機器102A〜102Dを示す。また、端末103として、端末103A、103Bを示す。
制御サーバー101は、端末103間のエンド間の通信経路を、通信機器102から収集したトポロジー(topology:接続形態)構成情報を基に計算し、端末103間のトラフィックを転送するためのエントリを、通信機器102の転送テーブルに対して登録する。また、制御サーバー101は、トポロジー構成情報の変化や使用可能帯域の変化等による経路の変更を基に、通信機器102の転送テーブルのエントリの書換や削除等を行う。
通信機器102(通信機器102A〜102D)は、ネットワークトポロジーを構成しており、ネットワークのエンド間のトラフィックを伝送する。通信機器102の転送テーブルは、ネットワークを流れるトラフィックの検索情報とその一致したトラフィックの転送先を指定したエントリで構成され、制御サーバー101から制御される。
端末103(端末103A、103B)は、エンド間のトラフィックの送受信を行う。
[ハードウェアの例示]
制御サーバー101の例として、PC(パソコン)、シンクライアントサーバー、アプライアンス(appliance)、ワークステーション、メインフレーム、スーパーコンピュータ等の計算機を想定している。
通信機器102の例として、オープンフロースイッチを想定している。オープンフロースイッチとして使用可能な機器の例として、ルータ、スイッチングハブ等の中継機器や、ゲートウェイ、プロキシ、ファイアウォール並びにロードバランサ等の中継用の計算機等が考えられる。例えば、通信機器102は、マルチレイヤスイッチ(multi−layer switch)でも良い。マルチレイヤスイッチは、サポートするOSI参照モデルの層毎に、更に細かく分類されている。主な種別としては、ネットワーク層(第3層)のデータを読むレイヤ3スイッチ、トランスポート層(第4層)のデータを読むレイヤ4スイッチ、アプリケーション層(第7層)のデータを読むレイヤ7スイッチ(アプリケーションスイッチ)がある。
端末103の例として、PC、シンクライアント端末、アプライアンス、ワークステーション、メインフレーム、スーパーコンピュータ等の計算機、又は、携帯電話機、カーナビ(カーナビゲーションシステム)、ガジェット(電子機器)、携帯ゲーム機、家庭用ゲーム機、双方向テレビ、デジタルチューナー、デジタルレコーダー、情報家電(information home appliance)、OA(Office Automation)機器等が考えられる。端末103は、車両や船舶、航空機等の移動体に搭載されていても良い。
なお、制御サーバー101、通信機器102、及び端末103は、物理マシン上に構築された仮想マシン(Virtual Machine(VM))でも良い。
制御サーバー101、通信機器102、及び端末103の各々を接続するネットワークの例として、インターネット、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(登録商標)、シリアル通信回線、データバス等が考えられる。
但し、実際には、これらの例に限定されない。
[通信機器の構成]
図2は、通信機器102の構成例を示すものである。
通信機器102は、制御サーバーインタフェース部1021と、トランザクション管理部1022と、テーブル操作部1023と、テーブル検索部1024と、転送テーブル1025と、データ転送部1026と、インタフェース1027を備える。ここでは、インタフェース1027として、インタフェース1027A、1027Bを示す。
制御サーバーインタフェース部1021は、制御サーバー101との制御チャネルを終端して、制御サーバー101からの制御命令を取り出したり、実行結果を返送したり、トランザクション(transaction)結果に対する問い合わせの受付・返送をしたりする。なお、トランザクションとは、関連する複数の処理を一つの処理単位としてまとめたものである。この制御命令の例として、オープンフロープロトコルメッセージ(OpenFlow Protocol Message)の1つであり、コントローラからスイッチのフローテーブルにエントリを登録するための「FlowMod」メッセージ等が考えられる。
トランザクション管理部1022は、制御命令毎にトランザクションとして保持し、その実行結果やその命令に対する検証結果を保持し、制御サーバー101からの問い合わせに対して応答したり、トランザクションの実行命令に対して実行したりする。実行待ちのトランザクションを実行する手法には、広く一般に使用されている2フェーズコミットの手法を使用することができる。
テーブル操作部1023は、転送テーブル1025に対してエントリの登録・書換・削除を実行するブロックである。
テーブル検索部1024は、トランザクション管理部1022からの命令に従って、転送テーブル1025の登録済みエントリに対して、新規エントリが包含関係や一部包含関係になっていないか、包含・一部包含関係のエントリがそのエントリに対して、高・低の検索優先度のいずれかを確認し、その結果をトランザクション管理部1022に返す。
転送テーブル1025は、図3に示す通り、エントリは番号で管理されており、その番号の順に検索優先度が決まっている、また、図4のような検索情報(例えば、送信元・送信先IPアドレス)、出力ポート等の情報を有する。ここでは、転送テーブル1025は、エントリ番号と、送信元IPアドレスと、送信先IPアドレスと、出力ポートの情報を有する。出力ポートは、インタフェース1027(インタフェース1027A、1027B)を示す。
データ転送部1026は、インタフェース1027(インタフェース1027A、1027B)から入力されたトラフィックから検索キーを抽出し、その検索キーを転送テーブル1025に対して検索実行し、その検索結果に従ってトラフィックを転送する。
インタフェース1027(インタフェース1027A、1027B)は、通信機器102の通信用のインタフェースであり、図1のように他の通信機器102や端末103と接続を行い、トラフィックの受信と送信を行う。
ここでは、制御サーバーインタフェース部1021、トランザクション管理部1022、テーブル操作部1023、テーブル検索部1024、転送テーブル1025、データ転送部1026は、プログラムで駆動される処理装置等のハードウェアと、そのハードウェアを駆動して所望の処理を実行させるプログラム等のソフトウェアと、そのソフトウェアや各種データを格納する記憶装置によって実現されるものとする。但し、実際には、これらの例に限定されない。
上記の処理装置の例として、CPU(Central Processing Unit)、マイクロプロセッサ(microprocessor)、マイクロコントローラ、或いは、同様の機能を有する半導体集積回路(Integrated Circuit(IC))等が考えられる。但し、実際には、これらの例に限定されない。
上記の記憶装置の例として、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)等のリムーバブルディスクや記憶媒体(メディア)等が考えられる。但し、実際には、これらの例に限定されない。
また、制御サーバーインタフェース部1021、データ転送部1026、及びインタフェース1027は通信機能を持つ。制御サーバーインタフェース部1021、データ転送部1026、及びインタフェース1027の通信機能を実現するハードウェアの例として、NIC(Network Interface Card)等のネットワークアダプタや、アンテナ等の通信装置、接続口(コネクタ)等の通信ポート等が考えられる。但し、実際には、これらの例に限定されない。
[転送テーブルへのエントリ登録の際の動作(待機あり)]
図6を用いて、通信経路の一貫性を保つための動作について説明する。
ここでは、制御サーバー101は、通信機器102に、図4の形式のエントリーデータを送信する。通信機器102は、受信したエントリーデータを転送テーブル1025に格納する。
(1)ステップS101
通信機器102において、制御サーバーインタフェース部1021は、制御サーバー101から、制御チャネル経由で、新規エントリの追加指示の制御命令を受け取り、トランザクション管理部1022に渡す。トランザクション管理部1022は、制御命令に含まれるトランザクション番号をキーに、図5のトランザクション状態テーブルに状態を検証待ちとして登録する。ここでは、トランザクション状態テーブルは、コントローラIDと、トランザクション番号と、制御命令と、状態と、ロールバック方法の情報を有する。コントローラIDは、制御サーバーの識別情報である。制御サーバー101が1台しかなく一意に特定できる場合、コントローラIDの情報はなくても良い。トランザクション状態テーブルの検証待ちトランザクションを、検証中の状態に変更して、転送テーブル1025のエントリをテーブル検索部1024に送付する。
(2)ステップS102
テーブル検索部1024は、転送テーブル1025を参照し、転送テーブル1025に空きエントリがあるかどうかを確認する。テーブル検索部1024は、空きエントリがある場合、ステップS104の処理へ移行する。また、テーブル検索部1024は、空きエントリがない場合、ステップS103の処理へ移行する。
(3)ステップS103
テーブル検索部1024は、空きエントリがない場合、転送テーブル1025に空きエントリがないことを、トランザクション管理部1022に通知する。トランザクション管理部1022は、状態を空きエントリなしとして、ステップS106の処理へ移行し、トランザクションを待機状態にする。
(4)ステップS104
テーブル検索部1024は、空きエントリがある場合、転送テーブル1025に包括関係や一部包括関係にあるエントリがある(コンフリクトがある)かどうかを確認する。テーブル検索部1024は、包括関係や一部包括関係にあるエントリがある(コンフリクトがある)場合、当該エントリの優先度も確認する。テーブル検索部1024は、包括関係や一部包括関係にあるエントリがある(コンフリクトがある)場合、ステップS105の処理へ移行する。また、テーブル検索部1024は、包括関係や一部包括関係にあるエントリがない(コンフリクトがない)場合、ステップS106の処理へ移行し、トランザクションを待機状態にする。
(5)ステップS105
テーブル検索部1024は、包括関係や一部包括関係にあるエントリがある(コンフリクトがある)場合、包括関係や一部包括関係にあるエントリがある(コンフリクトがある)ことを、トランザクション管理部1022に通知する。トランザクション管理部1022は、状態を包括・一部包括関係あり(コンフリクトあり)として、ステップS106の処理へ移行し、トランザクションを待機状態にする。
(6)ステップS106
テーブル検索部1024は、トランザクションを待機状態にして、制御サーバー101からの指示を待つ。制御サーバー101は、自動的に、トランザクション番号をキーに、処理検証結果を確認し、その結果を基に制御サーバー101内で判断を行う。このとき、トランザクション完了を、通信機器102から制御サーバー101に通知することも可能である。
(7)ステップS107
制御サーバーインタフェース部1021は、制御サーバー101から、制御チャネル経由で、新たな制御命令を受け取り、トランザクション管理部1022に渡す。制御サーバーインタフェース部1021は、制御サーバー101からの制御命令に従って処理を行う。制御命令が処理実行であれば、ステップS108の処理へ移行する。制御命令がロールバック指示であれば、ステップS109の処理へ移行する。
(8)ステップS108
制御サーバーインタフェース部1021は、制御命令が処理実行である場合、制御サーバー101からの制御命令に従って、転送テーブル1025にエントリを反映させる。
(9)ステップS109
制御サーバーインタフェース部1021は、制御命令がロールバック指示である場合、制御サーバー101からの制御命令に従って、転送テーブル1025にはエントリを反映させず、登録されたロールバック関数に従った処理を行う。
<第2実施形態>
本実施形態では、図6のステップS106、ステップS107において、トランザクション番号を制御のINDEX(索引)とする代わりに、転送テーブル1025のエントリを制御のINDEXとする。
転送テーブルのエントリとは、IPアドレス等の検索情報である。同じ検索情報が存在すると特定が難しくなるため、転送テーブルのエントリ(検索情報)には重複しない情報を使用すると好適である。
これにより、トランザクション番号を省略することが可能になる。
<第3実施形態>
本実施形態では、図7に示す通り、トランザクション管理部1022は、空きエントリがない場合や、包括関係や一部包括関係にあるエントリがない(コンフリクトがない)場合に、処理を待機するのではなく、そのまま制御命令を実行する。この場合、実行した結果、処理検証結果を確認でき、ロールバックすることも可能である。
[転送テーブルへのエントリ登録の際の動作(待機なし)]
図7を用いて、本実施形態において、通信経路の一貫性を保つための動作について説明する。なお、図7のステップS201〜S205は、図6のステップS101〜S105と同じである。
(1)ステップS201
通信機器102において、制御サーバーインタフェース部1021は、制御サーバー101から、制御チャネル経由で、新規エントリの追加指示の制御命令を受け取り、トランザクション管理部1022に渡す。トランザクション管理部1022は、制御命令に含まれるトランザクション番号をキーに、図5のトランザクション状態テーブルに状態を検証待ちとして登録する。トランザクション状態テーブルの検証待ちトランザクションを、検証中の状態に変更して、転送テーブルのエントリをテーブル検索部1024に送付する。
(2)ステップS202
テーブル検索部1024は、転送テーブル1025を参照し、転送テーブル1025に空きエントリがあるかどうかを確認する。テーブル検索部1024は、空きエントリがある場合、ステップS204の処理へ移行する。また、テーブル検索部1024は、空きエントリがない場合、ステップS203の処理へ移行する。
(3)ステップS203
テーブル検索部1024は、空きエントリがない場合、転送テーブル1025に空きエントリがないことを、トランザクション管理部1022に通知する。トランザクション管理部1022は、状態を空きエントリなしとして、ステップS206の処理へ移行する。
(4)ステップS204
テーブル検索部1024は、空きエントリがある場合、転送テーブル1025に包括関係や一部包括関係にあるエントリがある(コンフリクトがある)かどうかを確認する。なお、テーブル検索部1024は、包括関係や一部包括関係にあるエントリがある(コンフリクトがある)場合、当該エントリの優先度も確認する。テーブル検索部1024は、包括関係や一部包括関係にあるエントリがある(コンフリクトがある)場合、ステップS205の処理へ移行する。また、テーブル検索部1024は、包括関係や一部包括関係にあるエントリがない(コンフリクトがない)場合、ステップS206の処理へ移行する。
(5)ステップS205
テーブル検索部1024は、包括関係や一部包括関係にあるエントリがある(コンフリクトがある)場合、包括関係や一部包括関係にあるエントリがある(コンフリクトがある)ことを、トランザクション管理部1022に通知する。トランザクション管理部1022は、状態を包括・一部包括関係あり(コンフリクトあり)として、ステップS206の処理へ移行する。
(6)ステップS206
制御サーバーインタフェース部1021は、制御サーバー101からの制御命令に従って処理を行う。制御サーバーインタフェース部1021は、制御命令が処理実行である場合、制御サーバー101からの制御命令に従って、転送テーブル1025にエントリを反映させる。また、制御サーバーインタフェース部1021は、制御命令がロールバック指示である場合、制御サーバー101からの制御命令に従って、転送テーブル1025にはエントリを反映させず、登録されたロールバック関数に従った処理を行う。制御サーバー101は、トランザクション番号をキーに、処理検証結果を確認し、その結果を基に制御サーバー101内で判断を行う。このとき、トランザクション完了を、通信機器102から制御サーバー101に通知することも可能である。
<第4実施形態>
本実施形態では、図8に示す通り、通信機器102は、複数の制御サーバー101(制御サーバー101A、101B)から制御を受ける。この場合、図9に示す通りのトランザクション状態テーブルになる。本実施形態では、トランザクションは、「コントローラID」と「トランザクション番号」の組で管理される。コントローラIDは、制御サーバーの識別情報である。ここでは、制御サーバー101AのコントローラIDを「1」とし、制御サーバー101BのコントローラIDを「2」とする。
<第5実施形態>
本実施形態では、トランザクション番号には、制御サーバー101がイニシエーター(initiator)となるトランザクションに関しては、制御サーバー101が独自に生成した番号を使用し、通信機器102がイニシエーターとなるトランザクションについては、通信機器102が独自に生成した番号を使用する。通信機器102がイニシエーターとなるトランザクションの例として、インタフェースの状態の変化や、トラフィック受信を制御サーバー101へ通知するトランザクション等がある。
<第6実施形態>
本実施形態では、制御サーバー101が複数の通信機器102群を制御するため、制御サーバー101がイニシエーターとなって行うトランザクションも、通信機器102がイニシエーターとなって行うトランザクションも、制御サーバー101では、通信機器102とトランザクション番号の組で管理される。
<第7実施形態>
本実施形態では、通信機器102は、トランザクション番号を独自に生成し、通信機器102のIDが変更されたときや、接続先制御サーバー101が変更されたときには、トランザクション番号を新たに振り直す。このとき、トランザクション番号には、ランダムな番号を使用する。
<第8実施形態>
本実施形態では、通信機器102は、同一トランザクションの実行に複数の処理が存在するとき、それらの複数の処理の順序を守って処理を行う。
<追記>
なお、上記の各実施形態は、組み合わせて実施することも可能である。
<まとめ>
以上のように、本発明は、通信機器と分離された制御サーバーから通信機器の転送テーブルを追加・書換・削除することにより、端末間のトラフィックの認可・経路・QoS等を制御する通信システムにおいて、一貫性を保って複数の通信機器の転送テーブルに対する操作を行うことにより、端末間の通信の接続性を確保するための通信機器の制御方式に関する。
本発明は、制御サーバーからの通信機器の転送テーブルのエントリ等の登録・書換・削除を行うときに、通信機器間での状態不一致を抑止し、意図しないトラフィックのループや廃棄をなくし、通信の信頼性を向上することを目的とする。
本発明の手法では、制御サーバー101が行った通信機器102に対する転送テーブルのエントリの登録・書換・削除やインタフェースのUP/DOWNの制御等の制御指示に対して、通信機器102で制御サーバー101からの制御指示内容の検証を行い、通信機器102でその検証結果を保持し、制御サーバー101がその検証結果を取得し、複数の通信機器102からの検証結果を基にして、一連の制御が実行可能かどうか判断した後に、複数の通信機器102での実行を促す。
もしくは、制御サーバー101からの指示に従って、通信機器102はいったん実行し、制御サーバー101は制御命令が異常であると判断した場合、通信機器102に対して、実行結果をロールバックする。
以上、本発明の実施形態を詳述してきたが、実際には、上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の変更があっても本発明に含まれる。
なお、本出願は、日本出願番号2010−001292に基づく優先権を主張するものであり、日本出願番号2010−001292における開示内容は引用により本出願に組み込まれる。

Claims (1)

  1. 受信したトラフィックと、転送テーブルに登録されたエントリとをマッチングし、当該トラフィックに包含される情報と当該エントリに包含される情報とが一致すると、当該トラフィックを、当該エントリに規定された経路に転送する複数の通信機器と、
    前記複数の通信機器の各々が持つ転送テーブルにエントリを登録し、前記各通信機器に対して経路情報を決定する制御サーバーと
    を備え、
    前記各通信機器は、前記制御サーバーからの転送テーブルへの新規エントリの追加指示の制御命令を受け取った際、前記転送テーブルを参照し、前記転送テーブルに空きエントリがあるかどうかを確認し、前記転送テーブルに空きエントリがある場合、前記転送テーブルに包括・一部包括関係にあるエントリがあるかどうかを確認し、包括・一部包括関係にあるエントリが前記転送テーブルにある場合、当該エントリの優先度を確認して、前記制御サーバーからの制御命令の内容の検証を行い、
    前記制御サーバーは、前記各通信機器から検証結果を取得し、前記各通信機器からの検証結果を基にして、前記各通信機器において前記制御命令が実行可能かどうかを判断し、前記制御命令が実行可能であれば、前記各通信機器に対して前記制御命令の実行を促す
    通信制御システム。
JP2011549000A 2010-01-06 2011-01-04 通信制御システム Expired - Fee Related JP5743906B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011549000A JP5743906B2 (ja) 2010-01-06 2011-01-04 通信制御システム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2010001292 2010-01-06
JP2010001292 2010-01-06
JP2011549000A JP5743906B2 (ja) 2010-01-06 2011-01-04 通信制御システム
PCT/JP2011/050019 WO2011083786A1 (ja) 2010-01-06 2011-01-04 通信制御システム、及び通信制御方法

Publications (2)

Publication Number Publication Date
JPWO2011083786A1 JPWO2011083786A1 (ja) 2013-05-13
JP5743906B2 true JP5743906B2 (ja) 2015-07-01

Family

ID=44305522

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011549000A Expired - Fee Related JP5743906B2 (ja) 2010-01-06 2011-01-04 通信制御システム

Country Status (9)

Country Link
US (1) US9432283B2 (ja)
EP (1) EP2523404A4 (ja)
JP (1) JP5743906B2 (ja)
KR (1) KR101514506B1 (ja)
CN (2) CN102696205B (ja)
CA (1) CA2786429A1 (ja)
RU (1) RU2523917C2 (ja)
TW (1) TWI501599B (ja)
WO (1) WO2011083786A1 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6036815B2 (ja) * 2011-09-09 2016-11-30 日本電気株式会社 ネットワーク管理サービスシステム、制御装置、方法およびプログラム
WO2013042358A1 (en) * 2011-09-21 2013-03-28 Nec Corporation Communication apparatus, communication system, communication control method, and program
US10412001B2 (en) 2011-09-22 2019-09-10 Nec Corporation Communication terminal, communication method, and program
WO2013121841A1 (ja) 2012-02-16 2013-08-22 株式会社エヌ・ティ・ティ・ドコモ 移動体通信システム、通信システム、制御ノード、呼処理ノード及び通信制御方法
CN104221339A (zh) 2012-03-28 2014-12-17 日本电气株式会社 通信系统、通信装置、控制装置、通信装置的控制方法及程序
WO2014075216A1 (zh) * 2012-11-13 2014-05-22 华为技术有限公司 一种虚拟集群建立的方法及网络设备
CN103857004A (zh) * 2012-12-03 2014-06-11 华为技术有限公司 处理无线网络用户接入的方法、装置及系统
BR112015014211A2 (pt) * 2012-12-19 2017-07-11 Nec Corp aparelho de processamento de pacotes, método de configuração de entrada de fluxo e programa
CN103067476B (zh) * 2012-12-25 2015-08-19 浙江大学 一种基于虚拟机的动态网络重构方法
KR20140106235A (ko) * 2013-02-26 2014-09-03 한국전자통신연구원 오픈플로우 스위치 및 그 패킷 처리 방법
WO2014141332A1 (ja) * 2013-03-14 2014-09-18 日本電気株式会社 通信ネットワーク、通信ネットワークのデータ送受信方法
CN103246219B (zh) * 2013-04-28 2015-09-16 付弦 一种控制方法及系统
WO2014205812A1 (zh) * 2013-06-28 2014-12-31 华为技术有限公司 组表项的添加方法和交换机
US9712431B2 (en) 2013-07-17 2017-07-18 Kt Corporation Methods for managing transaction in software defined network
JP6221501B2 (ja) * 2013-08-19 2017-11-01 富士通株式会社 ネットワークシステム、その制御方法、ネットワーク制御装置及びその制御プログラム
JP6260285B2 (ja) * 2014-01-10 2018-01-17 富士通株式会社 制御装置および転送制御方法
CN105099920A (zh) 2014-04-30 2015-11-25 杭州华三通信技术有限公司 一种设置sdn流表项的方法和装置
US9692684B2 (en) * 2014-09-05 2017-06-27 Telefonaktiebolaget L M Ericsson (Publ) Forwarding table precedence in SDN
WO2016108711A1 (ru) * 2014-12-29 2016-07-07 Некоммерческое Партнерство "Центр Прикладных Исследований Компьютерных Сетей Устройство для приема и передачи данных с возможностью осуществления взаимодействия с openflow контроллером
RU2584471C1 (ru) * 2014-12-30 2016-05-20 Некоммерческое Партнерство "Центр Прикладных Исследований Компьютерных Сетей" УСТРОЙСТВО ДЛЯ ПРИЕМА И ПЕРЕДАЧИ ДАННЫХ С ВОЗМОЖНОСТЬЮ ОСУЩЕСТВЛЕНИЯ ВЗАИМОДЕЙСТВИЯ С OpenFlow КОНТРОЛЛЕРОМ
US9467378B1 (en) * 2015-03-01 2016-10-11 Netronome Systems, Inc. Method of generating subflow entries in an SDN switch
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
CN107590028B (zh) * 2017-09-14 2021-05-11 广州华多网络科技有限公司 一种信息处理的方法、服务器
JP7151548B2 (ja) * 2019-02-26 2022-10-12 富士通株式会社 異常検知プログラム、異常検知方法及び異常検知装置
CN112822114B (zh) * 2021-04-19 2021-07-02 军事科学院系统工程研究院网络信息研究所 一种基于行为树的路由控制方法、系统和介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11103318A (ja) * 1997-09-26 1999-04-13 Nippon Telegr & Teleph Corp <Ntt> Ipアドレス検索テーブル作成方法
JP2000286921A (ja) * 1999-03-31 2000-10-13 Fujitsu Ltd ネットワーク機器制御装置及び通信システム
JP2001167125A (ja) * 1999-12-13 2001-06-22 Mitsubishi Electric Corp 2分検索装置及び2分検索方法
JP2002176433A (ja) * 2000-12-05 2002-06-21 Mitsubishi Electric Corp 伝送品質制御システムおよび伝送品質制御方法
JP2004304523A (ja) * 2003-03-31 2004-10-28 Japan Telecom Co Ltd パケット通信システム並びにそれに用いられる通信ルート切替え制御サーバ及びパケット中継装置
JP2004336427A (ja) * 2003-05-08 2004-11-25 Mitsubishi Electric Corp 検索回路およびパケット転送装置
JP2006135970A (ja) * 2004-11-01 2006-05-25 Lucent Technol Inc SoftRouter動的バインディング・プロトコル
JP2007184969A (ja) * 2007-02-26 2007-07-19 Fujitsu Ltd 配信経路制御装置
WO2008126179A1 (ja) * 2007-03-15 2008-10-23 Fujitsu Limited ネットワーク検証システム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100359885C (zh) 2002-06-24 2008-01-02 武汉烽火网络有限责任公司 以策略流方式转发数据的方法和数据转发设备
NO318843B1 (no) * 2002-11-13 2005-05-09 Telenor Asa AHN-nettverk
US7437354B2 (en) * 2003-06-05 2008-10-14 Netlogic Microsystems, Inc. Architecture for network search engines with fixed latency, high capacity, and high throughput
US7496886B2 (en) * 2004-09-30 2009-02-24 Microsoft Corporation Method and system for providing cross project commitments
US9014181B2 (en) 2004-11-01 2015-04-21 Alcatel Lucent Softrouter separate control network
US7715382B2 (en) 2004-11-01 2010-05-11 Alcatel-Lucent Usa Inc. Softrouter
JP4623317B2 (ja) * 2005-01-05 2011-02-02 日本電気株式会社 通信装置、ルーティング方法及びプログラム
JP2007142609A (ja) 2005-11-16 2007-06-07 Nec Corp パス経路設定システム及びその方法並びにそれに用いるノード及びプログラム
JP2007184696A (ja) 2006-01-05 2007-07-19 Blitz:Kk 車両用電子制御システム
JP2008079175A (ja) * 2006-09-25 2008-04-03 Alaxala Networks Corp フレーム転送システム
FR2919138A1 (fr) * 2007-07-20 2009-01-23 France Telecom Point d'acces et noeud pour controler le routage dans un reseau hybride.
JP2009232053A (ja) * 2008-03-21 2009-10-08 Nec Corp Atm/ip優先制御装置、及びatm/ip優先制御方法
US8756675B2 (en) 2008-08-06 2014-06-17 Silver Spring Networks, Inc. Systems and methods for security in a wireless utility network
US8144732B2 (en) 2008-12-31 2012-03-27 Mediatek Inc. Method for boosting downlink transmission to mobile station and system utilizing the same
JP2011070364A (ja) * 2009-09-25 2011-04-07 Nec Corp 運用管理サーバ、ロールバック実行方法およびロールバック実行プログラム

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11103318A (ja) * 1997-09-26 1999-04-13 Nippon Telegr & Teleph Corp <Ntt> Ipアドレス検索テーブル作成方法
JP2000286921A (ja) * 1999-03-31 2000-10-13 Fujitsu Ltd ネットワーク機器制御装置及び通信システム
JP2001167125A (ja) * 1999-12-13 2001-06-22 Mitsubishi Electric Corp 2分検索装置及び2分検索方法
JP2002176433A (ja) * 2000-12-05 2002-06-21 Mitsubishi Electric Corp 伝送品質制御システムおよび伝送品質制御方法
JP2004304523A (ja) * 2003-03-31 2004-10-28 Japan Telecom Co Ltd パケット通信システム並びにそれに用いられる通信ルート切替え制御サーバ及びパケット中継装置
JP2004336427A (ja) * 2003-05-08 2004-11-25 Mitsubishi Electric Corp 検索回路およびパケット転送装置
JP2006135970A (ja) * 2004-11-01 2006-05-25 Lucent Technol Inc SoftRouter動的バインディング・プロトコル
JP2007184969A (ja) * 2007-02-26 2007-07-19 Fujitsu Ltd 配信経路制御装置
WO2008126179A1 (ja) * 2007-03-15 2008-10-23 Fujitsu Limited ネットワーク検証システム

Also Published As

Publication number Publication date
CN104270314A (zh) 2015-01-07
WO2011083786A1 (ja) 2011-07-14
KR20120102755A (ko) 2012-09-18
CN102696205A (zh) 2012-09-26
RU2012133437A (ru) 2014-02-27
EP2523404A4 (en) 2016-09-28
CN102696205B (zh) 2015-03-04
JPWO2011083786A1 (ja) 2013-05-13
RU2523917C2 (ru) 2014-07-27
EP2523404A1 (en) 2012-11-14
CA2786429A1 (en) 2011-07-14
US20130046882A1 (en) 2013-02-21
TWI501599B (zh) 2015-09-21
US9432283B2 (en) 2016-08-30
TW201201550A (en) 2012-01-01
KR101514506B1 (ko) 2015-04-22

Similar Documents

Publication Publication Date Title
JP5743906B2 (ja) 通信制御システム
JP5621778B2 (ja) コンテンツベーススイッチシステム、及びコンテンツベーススイッチ方法
JP5962808B2 (ja) スイッチシステム、スイッチ制御方法、及び記憶媒体
TWI472187B (zh) 網路系統、控制器、網路管理方法、儲存媒體、通信系統及通信方法
JP5652630B2 (ja) ネットワークシステム、スイッチ、及び接続端末検知方法
JP5557066B2 (ja) スイッチシステム、モニタリング集中管理方法
JP5994851B2 (ja) 転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラム
JP5483149B2 (ja) 通信システム、管理計算機、スタックドスイッチ、フロー経路決定方法
US9143447B2 (en) Closed loop formation preventing system and closed loop formation preventing method
JP5800019B2 (ja) 通信経路制御システム、経路制御装置、通信経路制御方法および経路制御プログラム
JPWO2012133060A1 (ja) ネットワークシステム、及びvlanタグ情報取得方法
JPWO2011162215A1 (ja) 通信システム、制御装置、ノードの制御方法およびプログラム
US20130170503A1 (en) Switch system, and data forwarding method
JP5911108B2 (ja) コンピュータシステム、サーバ、オープンフローコントローラ及び通信方法
JP5720340B2 (ja) 制御サーバ、通信システム、制御方法およびプログラム
JPWO2012121098A1 (ja) ネットワークシステム、パケット処理方法、及び記憶媒体
JP5747997B2 (ja) 制御装置、通信システム、仮想ネットワークの管理方法およびプログラム
WO2014126094A1 (ja) 通信システム、通信方法、制御装置、制御装置の制御方法及びプログラム
WO2011012081A1 (zh) 一种通信设备路由转发表的压缩方法和装置
JP2016046755A (ja) 通信装置、通信システム、通信制御プログラム、及び通信制御方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130604

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130918

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140131

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140414

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20140422

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20140613

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150320

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150428

R150 Certificate of patent or registration of utility model

Ref document number: 5743906

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees