(57)【要約】  制御装置側で把握しているノードのフローエントリ（処理規則）と、実際にこれらノードが保持しているフローエントリ（処理規則）との状態不一致による意図しないアクションの実行やループ障害の発生の低減。照合規則と該照合規則に適合するパケットの処理とを規定した処理規則に従って受信パケットを処理するノードと接続された制御装置は、ノードに対して処理規則の削除を要求した履歴を保持する削除要求履歴管理部と、前記ノードに対して新しい処理規則を設定する際に、前記削除要求履歴管理部を参照して、新しい処理規則と競合する照合規則を持つ処理規則を検索する処理規則検索部と、前記削除要求履歴管理部に前記新しい処理規則と競合する照合規則を持つ処理規則が存在した場合、前記ノードに対して、前記新しい処理規則と競合する照合規則を持つ処理規則の削除を再度要求する処理規則設定部と、を備える。（図１）
2011162215.tif 000002
【特許請求の範囲】
【請求項１】
照合規則と該照合規則に適合するパケットの処理とを規定した処理規則に従って受信パケットを処理するノードと、
前記ノードに対して処理規則の削除を要求した履歴を保持する削除要求履歴管理部と、前記ノードに対して新しい処理規則を設定する際に、前記削除要求履歴管理部を参照して、前記新しい処理規則と競合する照合規則を持つ処理規則を検索する処理規則検索部と、前記新しい処理規則と競合する照合規則を持つ処理規則が存在した場合、前記ノードに対して、前記新しい処理規則と競合する照合規則を持つ処理規則の削除を再度要求する処理規則設定部と、を備える制御装置と、
を含む通信システム。
【請求項２】
前記制御装置は、さらに、所定のポリシーに基づいて、前記削除要求履歴管理部から履歴を削除する処理規則再削除ポリシー管理部を備える請求項１の通信システム。
【請求項３】
前記処理規則再削除ポリシー管理部は、前記処理規則設定部による前記新しい処理規則と競合する処理規則の削除要求回数が所定のしきい値に達した場合に、前記削除要求履歴管理部から該当する履歴を削除する請求項２の通信システム。
【請求項４】
前記所定のしきい値として、ノード毎に設定されたしきい値を用いる請求項３の通信システム。
【請求項５】
照合規則と該照合規則に適合するパケットの処理とを規定した処理規則に従って受信パケットを処理するノードと、接続され、
前記ノードに対して処理規則の削除を要求した履歴を保持する削除要求履歴管理部と、
前記ノードに対して新しい処理規則を設定する際に、前記削除要求履歴管理部を参照して、前記新しい処理規則と競合する照合規則を持つ処理規則を検索する処理規則検索部と、
前記削除要求履歴管理部に前記新しい処理規則と競合する照合規則を持つ処理規則が存在した場合、前記ノードに対して、前記新しい処理規則と競合する照合規則を持つ処理規則の削除を再度要求する処理規則設定部と、を備える制御装置。
【請求項６】
さらに、所定のポリシーに基づいて、前記削除要求履歴管理部から履歴を削除する処理規則再削除ポリシー管理部を備える請求項５の制御装置。
【請求項７】
前記処理規則再削除ポリシー管理部は、前記処理規則設定部による前記新しい処理規則と競合する処理規則の削除要求回数が所定のしきい値に達した場合に、前記削除要求履歴管理部から該当する履歴を削除する請求項６の制御装置。
【請求項８】
前記所定のしきい値として、ノード毎に設定されたしきい値を用いる請求項７の制御装置。
【請求項９】
照合規則と該照合規則に適合するパケットの処理とを規定した処理規則に従って受信パケットを処理するノードに接続され、前記ノードに対し前記処理規則を設定する制御装置によるノードの制御方法であって、
前記ノードに対して処理規則の削除を要求した履歴を保持しておくステップと、
前記ノードに対して新しい処理規則を設定する際に、前記ノードに対して処理規則の削除を要求した履歴を参照して、前記新しい処理規則と競合する照合規則を持つ処理規則を検索するステップと、
前記履歴中に新しい処理規則と競合する照合規則を持つ処理規則が存在した場合、前記ノードに対して、前記新しい処理規則と競合する照合規則を持つ処理規則の削除を再度要求するステップと、を含むノードの制御方法。
【請求項１０】
照合規則と該照合規則に適合するパケットの処理とを規定した処理規則に従って受信パケットを処理するノードに接続され、前記ノードに対し前記処理規則を設定する制御装置を構成するコンピュータに実行させるプログラムであって、
前記ノードに対して処理規則の削除を要求した履歴を保持しておく処理と、
前記ノードに対して新しい処理規則を設定する際に、前記ノードに対して処理規則の削除を要求した履歴を参照して、前記新しい処理規則と競合する照合規則を持つ処理規則を検索する処理と、
前記履歴中に新しい処理規則と競合する照合規則を持つ処理規則が存在した場合、前記ノードに対して、前記新しい処理規則と競合する照合規則を持つ処理規則の削除を再度要求する処理と、を前記コンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願についての記載］
本発明は、日本国特許出願：特願２０１０−１４２５１１号（２０１０年６月２３日出願）の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、通信システム、制御装置、ノードの制御方法およびプログラムに関し、特に、受信パケットに適合する照合規則を持つ処理規則に従って、受信パケットを処理するノードを含む通信システム、制御装置、ノードの制御方法およびプログラムに関する。
【背景技術】
【０００２】
非特許文献１、２に示すとおり、近年、オープンフロー（ＯｐｅｎＦｌｏｗ）という技術が提案されている。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散、最適化を行うものである。オープンフロースイッチは、オープンフローコントローラとの通信用のセキュアチャネルを備え、オープンフローコントローラから適宜追加または書き換え指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合する照合規則（ＦｌｏｗＫｅｙ／マッチングキー）と、処理内容を定義したアクション（Ａｃｔｉｏｎｓ）と、フロー統計情報（Ｓｔａｔｓ）との組が定義される（図７参照）。【０００３】
図８に、非特許文献２に定義されているアクション名とアクションの内容を例示する。ＯＵＴＰＵＴは、パケットを指定ポート（インタフェース）に出力するアクションである。ＳＥＴ＿ＶＬＡＮ＿ＶＩＤからＳＥＴ＿ＴＰ＿ＤＳＴは、パケットヘッダのフィールドを修正するアクションである。【０００４】
例えば、オープンフロースイッチは、最初のパケット（ｆｉｒｓｔ  ｐａｃｋｅｔ）を受信すると、フローテーブルから、受信パケットのヘッダ情報に適合する照合規則（ＦｌｏｗＫｅｙ）を持つエントリを検索する。検索の結果、受信パケットに適合するエントリが見つかった場合、オープンフロースイッチは、受信パケットに対して、当該エントリのアクションフィールドに記述された処理内容を実施する。一方、前記検索の結果、受信パケットに適合するエントリが見つからなかった場合、オープンフロースイッチは、セキュアチャネルを介して、オープンフローコントローラに対して受信パケットを転送し、受信パケットの送信元・送信先に基づいたパケットの経路の決定を依頼し、これを実現するフローエントリを受け取ってフローテーブルを更新する。【０００５】
上記非特許文献１、２のオープンフローコントローラは、上記のように動作するオープンフロースイッチからフロー統計情報（Ｓｔａｔｓ）を収集して、通信ポリシーやその時々のネットワークの負荷状態に応じて、個々のオープンフロースイッチに対して動的に経路（当該経路を実現するフローエントリ（処理規則））を設定し、通信ポリシーに適った経路制御や負荷分散等を行うことが可能となっている。これら、オープンフロースイッチにおけるフローエントリの設定・変更・削除は、上記非特許文献１、２のオープンフロープロトコルで行われる（非特許文献２の「４．６  Ｆｌｏｗ  Ｔａｂｌｅ  Ｍｏｄｉｆｉｃａｔｉｏｎ  Ｍｅｓｓａｇｅｓ」参照）。【０００６】
その他特許文献１には、ＩＰマルチキャストテーブルと、ラベルマルチキャストテーブルとを備える前記レイヤ３デバイスと、前記ラベルマルチキャストテーブルを備えるレイヤ２スイッチとを有し、前記レイヤ３デバイスから前記レイヤ２スイッチの出力ポートを指示可能に構成したことを特徴とするＩＰマルチキャスト制御システムにおいて、レイヤ２スイッチのスイッチ部がラベルマルチキャストテーブルを参照するだけで済むように処理を簡略化し、かつ、高速のマルチキャストを可能とするＩＰマルチキャスト制御方法が開示されている。具体的には、マルチキャストラベルの付与されたマルチキャストフレームを受信した場合には、レイヤ３デバイス中のラベルマルチキャストテーブルを参照して、マルチキャストラベルから送信ポートを決定し、また、ラベルマルチキャストテーブルにマルチキャストラベルを削除すると記憶されている場合には、マルチキャストラベルを削除してマルチキャストフレームを送信するレイヤ２スイッチが開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００３−３４８１４８号公報
【非特許文献】
【０００８】
【非特許文献１】Nick McKeownほか７名、"OpenFlow: Enabling Innovation in Campus Networks"、［online］、［平成22(2010)年5月26日検索］、インターネット〈URL：http://www.openflowswitch.org//documents/openflow-wp-latest.pdf〉
【非特許文献２】"OpenFlow Switch Specification" Version 1.0.0. (Wire Protocol 0x01) ［平成22(2010)年5月26日検索］、インターネット〈URL：http://www.openflowswitch.org/documents/openflow-spec-v1.0.0.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上記の特許文献及び非特許文献の各開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明者によってなされたものである。
しかしながら、オープンフロースイッチにおけるフローエントリ（処理規則）の設定・変更・削除を繰り返し実行していくうちに、必要のなくなったフローエントリ（処理規則）の削除処理が不完全なまま残ってしまい、オープンフローコントローラ側で把握しているオープンフロースイッチのフローエントリ（処理規則）との状態不一致が発生することがある。さらには、この削除漏れのフローエントリ（処理規則）と新規設定したフローエントリ（処理規則）の組合せが原因となって、パケット廃棄、ヘッダ書換え等の意図しないアクションが実行されたり、ループ障害を引き起こすことも考えられる。【００１０】
その他、ループ障害を回避する技術として、ＳＴＰ（Ｓｐａｎｎｉｎｇ  Ｔｒｅｅ  Ｐｒｏｔｏｃｏｌ）などが知られているが、オープンフロースイッチ内部に残存している削除漏れのフローエントリ（処理規則）は、上記オープンフローコントローラ側で把握されることなくそのまま残り続けるため、以降に追加設定するフロー情報との組合せによるループ障害発生の可能性を低減することはできない。【００１１】
本発明は、上記した事情に鑑みてなされたものであって、その目的とするところは、オープンフローコントローラとオープンフロースイッチのように、各ノードに処理規則（フローエントリ）を設定する制御装置を有する構成において、制御装置側で把握しているノードのフローエントリ（処理規則）と、実際にこれらノードが保持しているフローエントリ（処理規則）との状態不一致による意図しないアクションの実行やループ障害の発生を低減できる通信システム、制御装置、ノードの制御方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００１２】
本発明の第１の視点によれば、照合規則と該照合規則に適合するパケットの処理とを規定した処理規則に従って受信パケットを処理するノードと、前記ノードに対して処理規則の削除を要求した履歴を保持する削除要求履歴管理部と、前記ノードに対して新しい処理規則を設定する際に、前記削除要求履歴管理部を参照して、前記新しい処理規則と競合する照合規則を持つ処理規則を検索する処理規則検索部と、前記新しい処理規則と競合する照合規則を持つ処理規則が存在した場合、前記ノードに対して、前記新しい処理規則と競合する照合規則を持つ処理規則の削除を再度要求する処理規則設定部と、を備える制御装置と、を含む通信システムが提供される。【００１３】
本発明の第２の視点によれば、照合規則と該照合規則に適合するパケットの処理とを規定した処理規則に従って受信パケットを処理するノードと、接続され、前記ノードに対して処理規則の削除を要求した履歴を保持する削除要求履歴管理部と、前記ノードに対して新しい処理規則を設定する際に、前記削除要求履歴管理部を参照して、前記新しい処理規則と競合する照合規則を持つ処理規則を検索する処理規則検索部と、前記削除要求履歴管理部に前記新しい処理規則と競合する照合規則を持つ処理規則が存在した場合、前記ノードに対して、前記新しい処理規則と競合する照合規則を持つ処理規則の削除を再度要求する処理規則設定部と、を備える制御装置が提供される。【００１４】
本発明の第３の視点によれば、照合規則と該照合規則に適合するパケットの処理とを規定した処理規則に従って受信パケットを処理するノードに接続され、前記ノードに対し前記処理規則を設定する制御装置によるノードの制御方法であって、前記ノードに対して処理規則の削除を要求した履歴を保持しておくステップと、前記ノードに対して新しい処理規則を設定する際に、前記ノードに対して処理規則の削除を要求した履歴を参照して、前記新しい処理規則と競合する照合規則を持つ処理規則を検索するステップと、前記履歴中に新しい処理規則と競合する照合規則を持つ処理規則が存在した場合、前記ノードに対して、前記新しい処理規則と競合する照合規則を持つ処理規則の削除を再度要求するステップと、を含むノードの制御方法が提供される。本方法は、上記したノードに処理規則を設定する制御装置という、特定の機械に結びつけられている。【００１５】
本発明の第４の視点によれば、照合規則と該照合規則に適合するパケットの処理とを規定した処理規則に従って受信パケットを処理するノードに接続され、前記ノードに対し前記処理規則を設定する制御装置を構成するコンピュータに実行させるプログラムであって、前記ノードに対して処理規則の削除を要求した履歴を保持しておく処理と、前記ノードに対して新しい処理規則を設定する際に、前記ノードに対して処理規則の削除を要求した履歴を参照して、前記新しい処理規則と競合する照合規則を持つ処理規則を検索する処理と、前記履歴中に新しい処理規則と競合する照合規則を持つ処理規則が存在した場合、前記ノードに対して、前記新しい処理規則と競合する照合規則を持つ処理規則の削除を再度要求する処理と、を前記コンピュータに実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
【発明の効果】
【００１６】
本発明によれば、制御装置側で把握しているノードのフローエントリ（処理規則）と、実際にこれらノードが保持しているフローエントリ（処理規則）との状態不一致による意図しないアクションの実行やループ障害の発生を低減することが可能になる。
【図面の簡単な説明】
【００１７】
【図１】本発明の概要を説明するための図である。
【図２】本発明の第１の実施形態の構成を表した図である。
【図３】本発明の第１の実施形態の制御装置（コントローラ）の構成を表したブロック図である。
【図４】本発明の第１の実施形態の制御装置（コントローラ）の動作を表したフローチャートである。
【図５】本発明の第２の実施形態の制御装置（コントローラ）の構成を表したブロック図である。
【図６】本発明の第２の実施形態の制御装置（コントローラ）の動作を表したフローチャートである。
【図７】非特許文献２に記載のフローエントリの構成を表した図である。
【図８】非特許文献２に記載されているアクション名とアクションの内容を示す図である。
【発明を実施するための形態】
【００１８】
はじめに、図１を用いて本発明の概要を説明する。図１の通信端点の外部ノード３１０と外部ノード３２０の間で通信を行う場合、制御装置（コントローラ）１００は、ネットワーク内に配置されたノード群（図１の例では、ノード２１０〜２４０のみを図示）による経路を計算し、当該経路を実現する処理規則（フローエントリ）を各ノードに設定する。
【００１９】
ここで例えば、制御装置（コントローラ）１００が、ノード２１０、ノード２４０、ノード２２０、ノード２３０の順でパケットを転送する経路を計算し、ノード２４０に、外部ノード３１０から外部ノード３２０に宛てられたパケットをノード２２０に接続されたポートから出力する処理規則（Ｏｌｄ  ｒｕｌｅ）を設定していたものとする。
【００２０】
その後、制御装置（コントローラ）１００が、ノード２１０〜２４０の負荷や通信ポリシーなどを基にして、外部ノード３１０から外部ノード３２０に宛てられたパケットの転送経路を、ノード２１０、ノード２２０、ノード２４０、ノード２３０の順の経路に変更する場合、ノード２４０に保持されている処理規則（Ｏｌｄ  ｒｕｌｅ）を削除し、新しい処理規則（Ｎｅｗ  ｒｕｌｅ）を設定する。
【００２１】
ここで例えば、上記ノード２４０からノード２２０方向の処理規則（Ｏｌｄ  ｒｕｌｅ）が何らかの理由で削除漏れになった場合、ノード２２０に設定されたノード２２０からノード２４０方向に該当パケットを転送する処理規則との組合せにより、外部ノード３１０から外部ノード３２０に宛てて送信されたパケットは、ノード２２０とノード２４０との間でループ障害に陥ってしまう。
【００２２】
そこで、制御装置（コントローラ）１００は、過去にノードに対して処理規則（フローエントリ）の削除を要求した履歴を管理するとともに、新規の処理規則（フローエントリ）を設定する際に、この履歴から、新規の処理規則（フローエントリ）と競合する処理規則（フローエントリ）を検索し、ノード２４０に対し、再度削除を要求する（「Ｏｌｄ  ｒｕｌｅの削除・要求」）。これにより、処理規則（Ｏｌｄ  ｒｕｌｅ）が削除され、ノード２２０からノード２４０方向への新規の処理規則（フローエントリ）との組合せで、ループ障害が発生する可能性が低減する。
【００２３】
以上により、ノード２４０において保持されている処理規則（フローエントリ）が、制御装置（コントローラ）１００が把握している内容と一致することとなり、ループ障害の発生頻度を抑制することが可能となる。
【００２４】
なお、上記の例では、ループ障害が発生するケースを挙げて説明したが、上記処理規則（フローエントリ）の再削除要求により、あるノードに、競合する照合規則（マッチングキー）を持つ処理規則（フローエントリ）が重複設定されていることによる、パケット廃棄、ヘッダ書換え等の意図しないアクションが実行される事態の発生も抑止することが可能になる。
【００２５】
［第１の実施形態］
図２は、本発明の第１の実施形態の構成を表した図である。図２を参照すると、ネットワークに配置され、処理規則（フローエントリ）に従ってパケットの処理を行う複数のノード（ノード２１０〜ノード２４０を図示）と、これらノードに処理規則（フローエントリ）を設定する制御装置（コントローラ）１００と、外部ノード３１０、３２０とが示されている。
【００２６】
図３は、図２の制御装置（コントローラ）１００の詳細構成を表したブロック図である。図３を参照すると、制御装置（コントローラ）１００は、処理規則作成部１０１と、処理規則設定部１０２と、処理規則検索部１０３と、ノード情報管理部１０４と、処理規則管理部１０５と、削除要求履歴管理部１０６と、イベント情報受信処理部１０９とを備えている。
【００２７】
処理規則作成部１０１は、ノードからの要求に応じて、処理規則（フローエントリ）を作成する。より具体的には、処理規則管理部１０５にノードから要求されているパケットに対応する処理規則（フローエントリ）が保持されている場合、処理規則作成部１０１は、当該設定済みの処理規則（フローエントリ）を処理規則検索部１０３に出力する。一方、処理規則管理部１０５に、ノードから要求されているパケットに対応する処理規則（フローエントリ）が保持されていない場合、処理規則作成部１０１は、ノード情報管理部１０４に保持されている通信ポリシーやネットワーク内に配置されている各ノードの通信負荷情報を参照して、処理規則（フローエントリ）が未設定のパケットの転送経路を計算し、当該転送経路を実現する処理規則（フローエントリ）を作成し、処理規則検索部１０３に出力する。
【００２８】
処理規則検索部１０３は、削除要求履歴管理部１０６から、処理規則作成部１０１から出力された処理規則（フローエントリ）との組合せでループ障害等を引き起こすことになる削除要求済み処理規則（フローエントリ）を検索する。この検索は、削除要求履歴管理部１０６に保持されている該当ノードの削除要求済み処理規則（フローエントリ）の中から、処理規則作成部１０１にて作成された新規処理規則（フローエントリ）と競合する照合規則（マッチングキー）を持つ処理規則を検索することで実現できる。前記検索の結果、再削除要求の必要のある削除要求済み処理規則（フローエントリ）が見つかった場合、処理規則検索部１０３は、処理規則設定部１０２に対し、該当ノードの処理規則（フローエントリ）の再削除要求を依頼する。
【００２９】
処理規則設定部１０２は、該当するノードに対し、処理規則作成部１０１にて作成された新規処理規則（フローエントリ）の追加設定要求や、不要となった処理規則（フローエントリ）の削除要求等を行う。また、処理規則設定部１０２は、不要となった処理規則（フローエントリ）の削除要求を行った場合、削除要求履歴管理部１０６に、削除履歴を追加する。また、処理規則設定部１０２は、前記処理規則の追加設定または削除に応じて、処理規則管理部１０５の内容を更新する。
【００３０】
ノード情報管理部１０４は、処理規則（フローエントリ）の設定に関する通信ポリシーの管理とネットワーク内に配置された各ノードの通信負荷情報を管理する。また、ノード情報管理部１０４に、各ノードの接続関係（トポロジ情報）等を保持させて、処理規則作成部１０１が、通信ポリシーや通信負荷に加えて、トポロジ情報を参照してパケットの転送経路を作成するものとしてもよい。
【００３１】
処理規則管理部１０５は、処理規則設定部１０２による処理規則（フローエントリ）の追加設定要求および削除要求に応じて、各ノードに設定されている処理規則（フローエントリ）を管理する。処理規則（フローエントリ）が未設定であるとして処理規則（フローエントリ）の設定を要求されたパケットに対応する処理規則（フローエントリ）が、処理規則管理部１０５に保持されている場合、処理規則作成部１０１は、処理規則管理部１０５から処理規則（フローエントリ）を読み出して再利用することができる。
【００３２】
削除要求履歴管理部１０６は、処理規則設定部１０２から処理規則の削除要求がなされた削除要求済み処理規則（フローエントリ）を履歴として管理する。
【００３３】
イベント情報受信処理部１０９は、イベント情報として、各ノードから処理規則の設定要求を受信し、処理規則作成部１０１に転送する。
【００３４】
以上のように、制御装置（コントローラ）１００は、あるノードに対し削除を要求した処理規則（フローエントリ）を履歴として保持し、新規処理規則（フローエントリ）との組合せでループ障害等を引き起こすことになる処理規則（フローエントリ）がある場合には、当該ノードに対し、当該処理規則（フローエントリ）の削除を再度要求する。
【００３５】
なお、上記のような制御装置（コントローラ）１００は、非特許文献１、２のオープンフローコントローラをベースに、上記処理規則検索部１０３および削除要求履歴管理部１０６を追加した構成にて実現することも可能である。
【００３６】
また、上記のような制御装置（コントローラ）１００の各部は、制御装置（コントローラ）１００を構成するコンピュータに、その記憶装置を含むハードウェアを用いて上記した削除要求済みの処理規則（フローエントリ）の保存処理や再度削除要求を行う処理規則（フローエントリ）の検索処理等を実行するプログラムにより実現することができる。
【００３７】
なお、本実施形態では、図２、図３のノード２１０〜２４０は、非特許文献１、２のオープンフロースイッチであるものとして説明するが、同等の機能を有するものであれば、他のスイッチ、ルータ等を用いることも可能である。
【００３８】
続いて、本実施形態の動作について図面を参照して詳細に説明する。図４は、本発明の第１の実施形態の制御装置（コントローラ）の動作を表したフローチャートである。
【００３９】
まず、通信端点の外部ノード３１０が外部ノード３２０に対して通信を開始した場合、ネットワーク内に配置されたノード群（ノード２１０〜ノード２４０のみを図示）には、外部ノード３１０から外部ノード３２０宛のパケットを配送するための処理規則（フローエントリ）が設定されていない。このような場合、制御装置（コントローラ）１００は、外部ノード３１０から最初にパケットを受信したノード２１０から、当該パケットとともに処理規則（フローエントリ）の設定要求（Ｐａｃｋｅｔ−Ｉｎ）を受信する（ステップＳ１００１）。
【００４０】
処理規則（フローエントリ）の設定要求を受信すると、制御装置（コントローラ）１００の処理規則作成部１０１は、ノード情報管理部１０４に保持されている通信ポリシーやネットワーク内に配置されている各ノードの通信負荷情報を参照して、ノードから要求されているパケットに対応する処理規則（フローエントリ）を作成する（ステップＳ１００２）。なお、処理規則管理部１０５に、ノードから要求されているパケットに対応する処理規則（フローエントリ）が保持されている場合、当該処理規則管理部１０５に保持されている処理規則（フローエントリ）を用いればよい。
【００４１】
制御装置（コントローラ）１００の処理規則作成部１０１は、ノード情報管理部１０４に保持されている通信ポリシーやネットワーク内に配置されている各ノードの通信負荷情報を参照して、パケットの転送経路を計算し、当該転送経路を実現する処理規則（フローエントリ）を作成し、処理規則検索部１０３に出力する。
【００４２】
制御装置（コントローラ）１００の処理規則検索部１０３は、処理規則作成部１０１から処理規則（フローエントリ）を受け取ると、削除要求履歴管理部１０６から、当該処理規則（フローエントリ）との組合せによりループ障害等を引き起こすことになる、照合規則が競合する削除要求済みの処理規則（フローエントリ）を検索する（ステップＳ１００３）。
【００４３】
ここで、処理規則作成部１０１から出力された処理規則（フローエントリ）と競合する削除要求済みの処理規則（フローエントリ）が発見されなかった場合（ステップＳ１００４のＮｏ）、処理規則設定部１０２は、該当ノードに対して、処理規則検索部１０３経由で処理規則作成部１０１から出力された処理規則（フローエントリ）の設定を要求する（ステップＳ１００６）。
【００４４】
一方、前記検索の結果、処理規則作成部１０１から出力された処理規則（フローエントリ）と競合する削除要求済みの処理規則（フローエントリ）が発見された場合（ステップＳ１００４のＹｅｓ）、処理規則設定部１０２は、該当ノードに対し、当該ループ障害等の発生の恐れがある削除要求済み処理規則（フローエントリ）の削除を再度要求する（ステップＳ１００５）。
【００４５】
例えば、図１のノード２１０からノード２２０、ノード２２０からノード２４０、ノード２４０からノード２３０というパケット転送経路を実現する新規の処理規則（フローエントリ）に対して、ノード２４０において、当該処理規則（フローエントリ）と照合規則（マッチングキー）が競合する削除要求済みの処理規則がある場合、処理規則設定部１０２は、ノード２４０に対し、当該削除要求済み処理規則（図１の「Ｏｌｄ  ｒｕｌｅ」）の削除を再度要求する（ステップＳ１００５）。
【００４６】
また、当該ループ障害等の発生の恐れがある削除要求済み処理規則（フローエントリ）を再度削除要求した場合、処理規則設定部１０２は、削除要求履歴管理部１０６に当該再度削除要求した処理規則（フローエントリ）を追加する。
【００４７】
上記処理規則（フローエントリ）の再削除を要求した後、処理規則設定部１０２は、該当ノードに対して、処理規則検索部１０３経由で処理規則作成部１０１から出力された処理規則（フローエントリ）の設定を要求する（ステップＳ１００６）。
【００４８】
最後に、処理規則設定部１０２は、処理規則管理部１０５に、前記追加設定した処理規則（フローエントリ）を登録する。
【００４９】
以上のようにして、非特許文献１、２相当のデータ転送ネットワークにおいて、本来削除されるべき処理規則（フローエントリ）が残ってしまうことに起因するループ障害等の発生頻度の抑制を実現することが可能となる。
【００５０】
［第２の実施形態］
次に、本発明の第２の実施形態について図面を参照して説明する。本発明の第２の実施形態は、上記第１の実施形態をベースに、処理規則（フローエントリ）再削除の要求回数に上限を設けたものである。以下、第１の実施形態との相違点を中心に説明を加える。
【００５１】
図５は、本発明の第２の実施形態の制御装置（コントローラ）の構成を表したブロック図である。図５を参照すると、第２の実施形態の制御装置（コントローラ）１００ａは、図３に示した第１の実施形態の制御装置（コントローラ）１００に対して、処理規則再削除ポリシー管理部１０７を追加した構成となっている。
【００５２】
処理規則再削除ポリシー管理部１０７は、処理規則作成部１０１から出力された処理規則（フローエントリ）との組合せによりループ障害等を引き起こすことになる削除要求済みの処理規則（フローエントリ）を再削除する際に、再削除の連続要求回数を管理して所定のしきい値に達した場合に、削除要求履歴管理部１０６から該当する処理規則（フローエントリ）を削除する。なお、前記所定のしきい値は、ノード２１０〜２４０共通の値としてもよいし、ノード毎に個別に設定できるものとしてもよい。
【００５３】
図６は、本発明の第２の実施形態の制御装置（コントローラ）の動作を表したフローチャートである。図６のステップＳ１００１〜ステップＳ１００５までの処理は、第１の実施形態の動作を説明した図４のステップＳ１００１〜ステップＳ１００５と同様である。
【００５４】
ステップＳ１００５にて、削除要求済み処理規則（フローエントリ）の再削除要求を実行したら、処理規則再削除ポリシー管理部１０７は、再削除の連続要求回数が前記所定のしきい値に達したか否かを判断する（ステップＳ１００７）。
【００５５】
ここで、再削除の連続要求回数が所定のしきい値に達した場合（ステップＳ１００７のＹｅｓ）、処理規則再削除ポリシー管理部１０７は、削除要求履歴管理部１０６からステップＳ１００５で再削除を要求した処理規則（フローエントリ）を削除する（ステップＳ１００８）。これにより、次回以降、当該処理規則（フローエントリ）の再削除の要求は抑止される。
【００５６】
再削除の連続要求回数が前記所定のしきい値に達していない場合も含めて、その後は、第１の実施形態と同様であり、処理規則設定部１０２が、処理規則検索部１０３経由で処理規則作成部１０１から出力された処理規則（フローエントリ）の設定を要求する（ステップＳ１００６）。
【００５７】
以上のように、本実施形態によれば、第１の実施形態の効果に加えて、同一ノードに対する同一の処理規則（フローエントリ）の再削除要求の回数に上限を設定し、再削除要求が繰り返される事態の発生を抑止することが可能となる。
【００５８】
また、上記した実施形態では、処理規則再削除ポリシー管理部１０７において、再削除の連続要求回数に基づいた削除要求履歴管理部１０６の履歴の削除を行うものとして説明したが、その他、一定時間の経過やエントリ数の超過等の所定のポリシーを定めて、削除要求履歴管理部１０６から履歴を削除することも可能である。
【００５９】
以上、本発明の好適な実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。上記した実施形態の制御装置（コントローラ）１００、１００ａは、専用のサーバとして実現することもでき、ノード２１０〜２４０としては、上記オープンフロースイッチのほか、ＩＰ網におけるルータ、ＭＰＬＳ（Ｍｕｌｔｉ−Ｐｒｏｔｏｃｏｌ  Ｌａｂｅｌ  Ｓｗｉｔｃｈｉｎｇ）網におけるＭＰＬＳスイッチにて実現することができる。その他、サーバがネットワーク内のノードのふるまいを集中管理するようなネットワークであれば、本発明を適用することが可能である。
【００６０】
最後に、本発明の好ましい形態を要約する。
［第１の形態］
（上記第１の視点による通信システム参照）
［第２の形態］
第１の形態の通信システムにおいて、
前記制御装置は、さらに、所定のポリシーに基づいて、前記削除要求履歴管理部から履歴を削除する処理規則再削除ポリシー管理部を備える通信システム。
［第３の形態］
第２の形態の通信システムにおいて、
前記処理規則再削除ポリシー管理部は、前記処理規則設定部による前記新しい処理規則と競合する処理規則の削除要求回数が所定のしきい値に達した場合に、前記削除要求履歴管理部から該当する履歴を削除する通信システム。
［第４の形態］
第３の形態の通信システムにおいて、
前記所定のしきい値として、ノード毎に設定されたしきい値を用いる通信システム。
［第５の形態］
（上記第２の視点による制御装置参照）
［第６の形態］
第５の形態の制御装置において、
さらに、所定のポリシーに基づいて、前記削除要求履歴管理部から履歴を削除する処理規則再削除ポリシー管理部を備える制御装置。
［第７の形態］
第６の形態の制御装置において、
前記処理規則再削除ポリシー管理部は、前記処理規則設定部による前記新しい処理規則と競合する処理規則の削除要求回数が所定のしきい値に達した場合に、前記削除要求履歴管理部から該当する履歴を削除する制御装置。
［第８の形態］
第７の形態の制御装置において、
前記所定のしきい値として、ノード毎に設定されたしきい値を用いる制御装置。
［第９の形態］
（上記第３の視点によるノードの制御方法参照）
［第１０の形態］
（上記第４の視点によるプログラム参照）
なお、上記第９、第１０の形態は、上記第１の形態と同様に、第２〜第４の形態に展開することが可能である。
本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【符号の説明】
【００６１】
１００、１００ａ  制御装置（コントローラ）
１０１  処理規則作成部
１０２  処理規則設定部
１０３  処理規則検索部
１０４  ノード情報管理部
１０５  処理規則管理部
１０６  削除要求履歴管理部
１０７  処理規則再削除ポリシー管理部
１０９  イベント情報受信処理部
２１０〜２４０  ノード
３１０、３２０  外部ノード
【図１】
2011162215.tif 000003
【図２】
2011162215.tif 000004
【図３】
2011162215.tif 000005
【図４】
2011162215.tif 000006
【図５】
2011162215.tif 000007
【図６】
2011162215.tif 000008
【図７】
2011162215.tif 000009
【図８】
2011162215.tif 000010
【国際調査報告】
2011162215.tif 000011
2011162215.tif 000012