JP6187466B2 - 制御装置、通信システム、通信方法及びプログラム - Google Patents
制御装置、通信システム、通信方法及びプログラム Download PDFInfo
- Publication number
- JP6187466B2 JP6187466B2 JP2014535544A JP2014535544A JP6187466B2 JP 6187466 B2 JP6187466 B2 JP 6187466B2 JP 2014535544 A JP2014535544 A JP 2014535544A JP 2014535544 A JP2014535544 A JP 2014535544A JP 6187466 B2 JP6187466 B2 JP 6187466B2
- Authority
- JP
- Japan
- Prior art keywords
- control information
- match condition
- transmission request
- unprocessed
- switch
- 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
Links
- 238000000034 method Methods 0.000 title claims description 20
- 238000004891 communication Methods 0.000 title claims description 14
- 230000005540 biological transmission Effects 0.000 claims description 122
- 238000012545 processing Methods 0.000 claims description 64
- 238000009825 accumulation Methods 0.000 claims description 26
- 230000008569 process Effects 0.000 claims description 13
- 230000010365 information processing Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 8
- 238000012546 transfer Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000007616 round robin method Methods 0.000 description 1
- 230000009291 secondary effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/34—Signalling channels for network management communication
- H04L41/342—Signalling channels for network management communication between virtual entities, e.g. orchestrators, SDN or NFV entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/42—Centralised routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
[関連出願についての記載]
本発明は、日本国特許出願:特願2012−199281号(2012年 9月11日出願)に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、制御装置、通信システム、通信方法及びプログラムに関し、特に、配下のスイッチ群を制御する制御装置、通信システム、通信方法及びプログラムに関する。
本発明は、日本国特許出願:特願2012−199281号(2012年 9月11日出願)に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、制御装置、通信システム、通信方法及びプログラムに関し、特に、配下のスイッチ群を制御する制御装置、通信システム、通信方法及びプログラムに関する。
近年、オープンフロー(OpenFlow)という技術が提案されている(非特許文献1、2参照)。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散、最適化を行うものである。非特許文献2に仕様化されているオープンフロースイッチは、オープンフローコントローラとの通信用のセキュアチャネルを備え、オープンフローコントローラから適宜追加または書き換え指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合するマッチ条件(Match Fields)と、フロー統計情報(Counters)と、処理内容を定義したインストラクション(Instructions)と、の組が定義される(非特許文献2の「4.1 Flow Table」の項参照)。
例えば、オープンフロースイッチは、パケットを受信すると、フローテーブルから、受信パケットのヘッダ情報に適合するマッチ条件(非特許文献2の「4.3 Match Fields」参照)を持つエントリを検索する。検索の結果、受信パケットに適合するエントリが見つかった場合、オープンフロースイッチは、フロー統計情報(カウンタ)を更新するとともに、受信パケットに対して、当該エントリのインストラクションフィールドに記述された処理内容(指定ポートからのパケット送信、フラッディング、廃棄等)を実施する。一方、検索の結果、受信パケットに適合するエントリが見つからなかった場合、オープンフロースイッチは、セキュアチャネルを介して、オープンフローコントローラに対してエントリ設定の要求、即ち、受信パケットを処理するための制御情報の送信要求(Packet−Inメッセージ)を送信する。オープンフロースイッチは、処理内容が定められたフローエントリを受け取ってフローテーブルを更新する。このように、オープンフロースイッチは、フローテーブルに格納されたエントリを制御情報として用いてパケット転送を行う。
Nick McKeownほか7名、"OpenFlow: Enabling Innovation in Campus Networks"、[online]、[平成24(2012)年6月21日検索]、インターネット〈URL:http://www.openflow.org/documents/openflow-wp-latest.pdf〉
"OpenFlow Switch Specification" Version 1.1.0 Implemented (Wire Protocol 0x02)、[online]、[平成24(2012)年6月21日検索]、インターネット〈URL:http://www.openflow.org/documents/openflow-spec-v1.1.0.pdf〉
以下の分析は、本発明によって与えられたものである。上述したように、オープンフロースイッチに代表されるスイッチは、受信パケットに適合する制御情報(上記「エントリ」に相当)を保持していない場合に、制御情報の送信要求を送信する。また、デフォルトでは未知のパケットを破棄する動作を行ない、特定の特徴を持つパケットのみ、制御情報の送信要求の送信を行わせるエントリを設定する場合もある。
このため、特定のスイッチが、大量のパケットを受信した場合、コントローラに対し、制御情報の送信要求が大量に送信されてしまうということが起こりうる。この結果、コントローラの負荷が増大し、他のスイッチからの制御情報の送信要求への応答が遅れるなどの問題が生ずる可能性がある。
本発明は、上記したコントローラに代表されるスイッチからの制御情報の送信要求に応じる制御装置の負荷を低減できる制御装置、通信システム、通信方法及びプログラムを提供することを目的とする。
第1の視点によれば、マッチ条件を含み、該マッチ条件に適合するパケットの処理を行わせるための制御情報を管理する制御情報管理部と、配下のスイッチから当該スイッチが受信したパケットを処理するための制御情報の送信要求のうち未処理のものを蓄積する送信要求蓄積部と、前記制御情報管理部に管理されている制御情報のうち、マッチ条件が広い(緩い)制御情報を選択し、前記送信要求蓄積部に蓄積されている未処理の制御情報の送信要求のうち、前記マッチ条件と照合するフィールドの値が前記マッチ条件が広い(緩い)制御情報に適合する、未処理の制御情報の送信要求を選択し、前記未処理の制御情報の送信要求の送信元のスイッチに対し、前記マッチ条件が広い(緩い)制御情報を応答する要求処理部と、を備える制御装置が提供される。
第2の視点によれば、マッチ条件を含み、該マッチ条件に適合するパケットの処理を行わせるための制御情報を管理する制御情報管理部と、配下のスイッチから当該スイッチが受信したパケットを処理するための制御情報の送信要求のうち未処理のものを蓄積する送信要求蓄積部と、前記制御情報管理部に管理されている制御情報のうち、マッチ条件が広い(緩い)制御情報を選択し、前記送信要求蓄積部に蓄積されている未処理の制御情報の送信要求のうち、前記マッチ条件と照合するフィールドの値が前記マッチ条件が広い(緩い)制御情報に適合する、未処理の制御情報の送信要求を選択し、前記未処理の制御情報の送信要求の送信元のスイッチに対し、前記マッチ条件が広い(緩い)制御情報を応答する要求処理部と、を備える制御装置と、前記制御装置に対して、前記制御情報の送信要求を送信するスイッチと、を含む通信システムが提供される。
第3の視点によれば、マッチ条件を含み、該マッチ条件に適合するパケットの処理を行わせるための制御情報を管理する制御情報管理部を備えた制御装置が、配下のスイッチから当該スイッチが受信したパケットを処理するための制御情報の送信要求のうち未処理のものを送信要求蓄積部に蓄積するステップと、前記制御情報管理部に管理されている制御情報のうち、マッチ条件が広い(緩い)制御情報を選択し、前記送信要求蓄積部に蓄積されている未処理の制御情報の送信要求のうち、前記マッチ条件と照合するフィールドの値が前記マッチ条件が広い(緩い)制御情報に適合する、未処理の制御情報の送信要求を選択し、前記未処理の制御情報の送信要求の送信元のスイッチに対し、前記マッチ条件が広い(緩い)制御情報を応答するステップと、を含む通信方法が提供される。本方法は、配下のスイッチを制御する制御装置という、特定の機械に結びつけられている。
第4の視点によれば、マッチ条件を含み、該マッチ条件に適合するパケットの処理を行わせるための制御情報を管理する制御情報管理部を備えた制御装置を構成するコンピュータに、配下のスイッチから当該スイッチが受信したパケットを処理するための制御情報の送信要求のうち未処理のものを送信要求蓄積部に蓄積する処理と、前記制御情報管理部に管理されている制御情報のうち、マッチ条件が広い(緩い)制御情報を選択し、前記送信要求蓄積部に蓄積されている未処理の制御情報の送信要求のうち、前記マッチ条件と照合するフィールドの値が前記マッチ条件が広い(緩い)制御情報に適合する、未処理の制御情報の送信要求を選択し、前記未処理の制御情報の送信要求の送信元のスイッチに対し、前記マッチ条件が広い(緩い)制御情報を応答する処理と、を実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な(非トランジエントな)記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
本発明によれば、スイッチからの制御情報の送信要求に応じる制御装置の負荷を低減することが可能となる。
はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
本発明は、その一実施形態において、図8に示すように、スイッチ(図8の10)を制御する制御装置(図8の20A)により実現できる。より具体的には、この制御装置(図8の20A)は、マッチ条件を含み、該マッチ条件に適合するパケットの処理を行わせるための制御情報を管理する制御情報管理部(図8の21)と、配下のスイッチから当該スイッチが受信したパケットを処理するための制御情報の送信要求のうち未処理のものを蓄積する送信要求蓄積部(図8の23)と、前記制御情報管理部に管理されている制御情報のうち、マッチ条件が広い(緩い)制御情報を選択し、前記送信要求蓄積部に蓄積されている未処理の制御情報の送信要求のうち、前記マッチ条件と照合するフィールドの値が前記マッチ条件の広い(緩い)制御情報に適合する、未処理の制御情報の送信要求を選択し、前記未処理の制御情報の送信要求の送信元のスイッチに対し、前記マッチ条件が広い制御情報に応答する要求処理部(図8の22A)とを含んで構成される。
この制御装置(図8の20A)は、例えば図10に示すように、制御情報管理部(図8の21)から最も広い(緩い)マッチ条件(x.x.x.x/16 allow)を持つフローエントリを選択する。次に、送信要求蓄積部23から、このフローエントリのマッチ条件(x.x.x.x/16 allow)に適合するPacket−Inメッセージを検索する。この結果、例えば、図10の送信元IPアドレス(srcIP=x.x.x.x)の制御情報の送信要求(Packet−Inメッセージ)の処理が先に行われる。
本発明は、別の一実施形態において、図1に示すように、スイッチ10を制御する制御装置20により実現できる。より具体的には、この制御装置20は、マッチ条件を含み、該マッチ条件に適合するパケットの処理を行わせるための制御情報を管理する制御情報管理部(図1の21)と、配下のスイッチから当該スイッチが受信したパケットを処理するための制御情報の送信要求を受けた場合、前記制御情報管理部に管理されている制御情報のマッチ条件と、前記スイッチが受信したパケットの前記マッチ条件と照合するフィールドとを照合し、両者が一致する制御情報のうち、前記マッチ条件が広くなる方の制御情報を選択して、前記スイッチに応答する要求処理部(図1の22)とを含んで構成される。
例えば、図1に示すように、送信元IPアドレスを10.56.0.1とするパケットについて、制御情報の送信要求を受けた場合、制御装置20は、制御情報管理部(図1の21)に管理されている2つの制御情報のマッチ条件と照合する。図1の例では、マッチ条件srcIP=10.56.0.1/32の制御情報、マッチ条件srcIP=10.56.0.x/24の制御情報の双方が受信パケットの送信元IPアドレスとマッチするが、制御装置20は、マッチ条件が広くなる方、即ち、プレフィックス長の短いsrcIP=10.56.0.x/24の制御情報を選択して、スイッチ10に応答する。なお、上記の例では、プレフィックスによってマッチ条件が広くなる制御情報を選択したが、プレフィックスではなく、マスクやレンジをもとに、広くなる制御情報を選択してもよい。
このように、マッチ条件が広くなる方の制御情報を応答することによって、当該制御情報が設定されたスイッチ10において、他のパケットを受信した場合、前記制御情報にマッチする可能性が高くなるため、制御情報の送信要求が発行される可能性も低くなる。結果として、制御装置20の負荷を低減することが可能となる。また、副次的効果として、スイッチ10においても制御装置20への問い合わせが不要となるため、スイッチ10側の負荷も低減することが可能となる。
[第1の実施形態]
続いて、本発明の第1の実施形態について図面を参照して詳細に説明する。図2は、本発明の第1の実施形態の構成を示す図である。図2を参照すると、制御情報管理部21と、要求処理部22とを備えた制御装置20と、制御装置20によって制御されるスイッチ群10−1〜10−3と、スイッチ群10−1〜10−3によって構成されるネットワークに接続する端末31、32と、が示されている。
続いて、本発明の第1の実施形態について図面を参照して詳細に説明する。図2は、本発明の第1の実施形態の構成を示す図である。図2を参照すると、制御情報管理部21と、要求処理部22とを備えた制御装置20と、制御装置20によって制御されるスイッチ群10−1〜10−3と、スイッチ群10−1〜10−3によって構成されるネットワークに接続する端末31、32と、が示されている。
スイッチ群10−1〜10−3は、非特許文献1、2のオープンフロースイッチ相当のスイッチであり、受信パケットに適合するマッチ条件を持つフローエントリを保持していない場合や、受信パケットに適合するマッチ条件を持つフローエントリが制御装置20への通知を指示している場合、制御装置20に対して、フローエントリの送信を要求するメッセージ(以下、「Packet−Inメッセージ」)を送信する。
制御装置20の制御情報管理部21には、端末ユーザのアクセスポリシ等に基づいて予め生成されたフローエントリが格納されている。制御情報管理部21におけるフローエントリは、マッチ条件が広いものが先頭に来るようにソートされた状態で格納されている。このようにすることで、Packet−Inメッセージにて要求されたパケットに対するフローエントリの検索が高速化される。本実施形態では、マッチ条件として用いる送信元IPアドレスの条件が広いエントリが上位に位置するようにソートされているものとする。具体的には、図2に示すように、送信元IPアドレス(srcIP)が192.168.1.x/24に合致するパケットを次ホップ(指定ポート)に転送するフローエントリの次に、送信元IPアドレス(srcIP)が192.168.1.1/32に合致するパケットを次ホップ(指定ポート)に転送するフローエントリが格納されているものとする。
制御装置20の要求処理部22は、スイッチ10−1〜10−3からPacket−Inメッセージを受信すると、制御情報管理部21から、Packet−Inメッセージにて指示されたパケットと適合するマッチ条件を持つフローエントリを検索する。そして、制御装置20の要求処理部22は、スイッチ10−1に対して、前記検索の結果得られたフローエントリを送信する。なお、本実施形態では、このときに、制御装置20の要求処理部22は、スイッチ10−2、10−3に対し、同一のマッチ条件を持ちそれぞれ次のスイッチにパケットの転送を指示するフローエントリを送信する。
なお、上記のような制御装置は、非特許文献1、2のオープンフローコントローラに、制御情報管理部21と、要求処理部22とに相当する機能を追加することでも実現できる。
また、図2に示した制御装置20の要求処理部22は、制御装置20を構成するコンピュータに、そのハードウェアを用いて、上記した要求処理部22におけるフローエントリの検索処理及び送信処理を実行させるコンピュータプログラムにより実現することもできる。
また、本実施形態では、ネットワークの端部に位置するスイッチ10−1に2台の端末31、32が接続されているものとする。また、端末31のIPアドレスは、192.168.1.1、端末32のIPアドレスは、192.168.1.2であるものとして説明する。
続いて、本実施形態の動作について、図面を参照して詳細に説明する。図3は、端末31が通信を開始し、最初のパケットが送信された後、後続パケットを処理するためのフローエントリが経路上のスイッチ10−1〜10−3に設定されるまでの動作を表した図である。
図3を参照すると、まず端末31が、任意の宛先に宛てて、自身のIPアドレス192.168.1.1を送信元IPアドレスとしたパケット(宛先IPアドレス等は任意)を送信する(図3の(1))。
スイッチ10−1は、IPアドレス192.168.1.1を送信元IPアドレスとしたパケットを受信すると、このパケットに適合するマッチ条件を持つフローエントリを検索する。しかしながら、この時点では、フローエントリは設定されていない。そこで、スイッチ10−1は、制御装置20に対して、前記パケットまたは前記パケットから抽出したパケット情報を含んだPacket−Inメッセージを送信する(図3の(2))。
Packet−Inメッセージを受信すると、制御装置20の要求処理部22は、制御情報管理部21から、Packet−Inメッセージにて指示されたパケットと適合するマッチ条件を持つフローエントリを検索する。本実施形態では、フローエントリは予めマッチ条件の広いエントリが上位に位置するようにソートされているので、192.168.1.x/24に合致するパケットを次ホップ(指定ポート)に転送するフローエントリがスイッチに転送するフローエントリとなる。
そして、制御装置20は、スイッチ10−1に対して、前記検索の結果得られた送信元IPアドレスが=192.168.1.x/24をマッチ条件とするフローエントリを送信する。また、制御装置20は、スイッチ10−2、10−3に対して、同一のマッチ条件を持ちそれぞれ次のスイッチにパケットの転送を指示するフローエントリを送信する(図3の(3))。
以上のように、より広いマッチ条件を持つフローエントリが設定されると、例えば、図4に示すように、端末32が新たに通信を開始し、パケットを送信した場合(図4の(4)、送信元IPアドレスが192.168.1.2であるパケットは、図3の(3)にて設定されたフローエントリにて処理されるので、制御装置20に対してPacket−Inメッセージを送信することなく、転送される(図4(5))。
図5は、本実施形態のようにマッチ条件の広いフローエントリではなく、ロンゲストマッチで選択したフローエントリを設定した場合の動作(参考例)を説明するための図である。図5に示すように、ロンゲストマッチでフローエントリを選択した場合、送信元IPアドレス(srcIP)が192.168.1.x/24に合致するパケットを次ホップ(指定ポート)に転送するフローエントリではなく、送信元IPアドレス(srcIP)が192.168.1.1/32に合致するパケットを次ホップ(指定ポート)に転送するフローエントリが設定されることになる(図5の(1)〜(3’))。
そして、先の第1の実施形態と同様に端末32が新たに通信を開始し、送信元IPアドレスが192.168.1.2であるパケットを送信した場合、スイッチ10−1は、既存のフローエントリにマッチしないパケットを受信したので、制御装置20に対し、端末32からのパケットを処理するためのフローエントリの設定を要求するPacket−Inメッセージを送信する。そして、制御装置20は、スイッチ10−1に、192.168.1.x/24に合致するパケットを次ホップ(指定ポート)に転送するフローエントリをスイッチ10−1〜10−3に送信する(図6の(4)〜(6))。
以上のように、本実施形態によれば、スイッチからのPacket−Inメッセージに応じる制御装置の負荷を低減することが可能となる。その理由は、複数のフローエントリのうち、マッチ条件が広い方のフローエントリを先に設定するように構成したことにある。
なお、上記実施形態では、制御情報として、パケットを転送するためのフローエントリを送信する動作を示したが、スイッチにパケットを破棄させるフローエントリを送信してもよい。
また、上記した実施形態では、マッチ条件として送信元IPアドレスのみを用いる例を挙げて説明したが、複数のフィールドをマッチ条件として用いることも可能である。図7は、IPアドレスとポート番号をマッチ条件とした場合のフローエントリの比較処理を説明するための図である。IPアドレスとポート番号のいずれもパターン数が多い程、広いマッチ条件が設定されているものとする。この場合、IPアドレスのパターン数とポート番号のパターン数を乗じた値をマッチ条件の広さと看做すことができる。従って、IPアドレスのパターン数とポート番号のパターン数を乗じた値(比較値)が大きい方のマッチ条件を持つフローエントリを選択すればよい。例えば、図7の例では、IPアドレスのパターン数とポート番号のパターン数を乗じた値(比較値)が大きいマッチ条件Bを選択することになる。また、これは、マッチ条件の各フィールドの長さ(プレフィックス長等)の積が短い方を選択する操作と同等である。
また、マッチ条件として、下位のプロトコル(レイヤ)の条件のみが指定された場合、上位のプロトコル(レイヤ)の条件はany(ワイルドカード)とみなして、比較値を計算してもよい。例えば、イーサネット(登録商標)フレームのプロトコル(レイヤ)でIPv4の指定のみが指定されている場合、その上位であるIPアドレスとTCP/UDPの条件をanyとして、IPソースアドレス(2^32通り)、IPデスティネーションアドレス(2^32通り)、TCP/UDPソースポート(2^16通り)、TCP/UDPデスティネーションポート(2^16通り)のパターンがある。この場合、比較値は2^96乗として扱うことができる。
また、上記の例では、制御装置20は、Packet−Inに対応して広くマッチする制御情報を送信したが、能動的に制御情報を送る場合においても、制御情報をソートして、広くマッチするフローエントリから優先してスイッチ10へ送信してもよい。
[第2の実施形態]
続いて、上記第1の実施形態の制御装置20に変更を加えた本発明の第2の実施形態について図面を参照して詳細に説明する。図8は、本発明の第2の実施形態の構成を示す図である。図2に示した第1の実施形態との相違点は、制御装置に、未処理のPacket−Inメッセージを蓄積する送信要求蓄積部23が追加され、要求処理部22Aに前記送信要求蓄積部23に蓄積された未処理のPacket−Inメッセージを処理する機能が追加されている点である。その他の構成は第1の実施形態と同様であるので、以下、その相違点を中心に説明する。
続いて、上記第1の実施形態の制御装置20に変更を加えた本発明の第2の実施形態について図面を参照して詳細に説明する。図8は、本発明の第2の実施形態の構成を示す図である。図2に示した第1の実施形態との相違点は、制御装置に、未処理のPacket−Inメッセージを蓄積する送信要求蓄積部23が追加され、要求処理部22Aに前記送信要求蓄積部23に蓄積された未処理のPacket−Inメッセージを処理する機能が追加されている点である。その他の構成は第1の実施形態と同様であるので、以下、その相違点を中心に説明する。
送信要求蓄積部23には、例えば、要求処理部22AがあるPacket−Inメッセージを処理している間に他のスイッチからPacket−Inメッセージを受信した場合など、処理待ちとなるPacket−Inメッセージが蓄積される。
要求処理部22Aは、送信要求蓄積部23に未処理のPacket−Inメッセージが蓄積されている場合、送信要求蓄積部23から、未処理のPacket−Inメッセージを取り出して、上述の第1の実施形態と同様に、より広いマッチ条件を持つフローエントリを検索して、Packet−Inメッセージの送信元のスイッチ及びその他経路上のスイッチに送信する。
さらに、要求処理部22Aは、送信要求蓄積部23に、2以上の未処理のPacket−Inメッセージが蓄積されている場合、次のような動作を行う。
図9は、上記2以上の未処理のPacket−Inメッセージが蓄積されている場合の動作を説明するための図である。まず、要求処理部22Aは、制御情報管理部21から最も広いマッチ条件を持つフローエントリを選択し(ステップS101)、送信要求蓄積部23から、前記マッチ条件に適合するパケットのPacket−Inメッセージを検索する(ステップS102)。そして、要求処理部22Aは、前記検索の結果、見つかったPacket−Inメッセージを先に処理する(具体的には、前記選択したフローエントリを送信元スイッチに送信する(ステップS103))。そして、以上の処理を未処理のPacket−Inメッセージが無くなるまで繰り返す。
図10は、上記ステップS101〜S103の動作を具体的に説明するための図である。例えば、ステップS101において、制御情報管理部21から最も広いマッチ条件(x.x.x.x/16 allow)を持つフローエントリが選択される。そして次のステップS102において、送信要求蓄積部23から、前記フローエントリのマッチ条件(x.x.x.x/16 allow)に適合するPacket−Inメッセージの検索が行われる。この結果、例えば、図10の送信元IPアドレス(srcIP=x.x.x.x)のPacket−Inメッセージの処理が先に行われる。
このように、未処理のPacket−Inメッセージが滞留している場合、最も広いマッチ条件を設定できるPacket−Inメッセージから先に処理することにより、以降のPacket−Inメッセージの発生を抑えることが可能となる。
以上、本発明の各実施形態を説明したが、本発明は、上記した各実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、上記した実施形態で用いたネットワーク構成や、第1、第2のスイッチの数はあくまで一例であり、その数に制約は無い。
また、上記した第2の実施形態では、制御装置20の要求処理部22Aがより広いマッチ条件を設定できるフローエントリを選択するものとして説明したが、この機能を省略してもよい。この場合、未処理のPacket−Inメッセージが複数ある場合に、より広いマッチ条件を設定できるPacket−Inメッセージを先に処理することにより、Packet−Inメッセージの発生を抑えることに特化した構成が実現される。
また、上記した説明では、送信要求蓄積部23は、1つだけであったが、複数あってもよい。例えば、図11に示すように、1つの制御装置20Bが、複数のスイッチ10−1〜10−Nと接続している場合に、制御装置20Bはそれぞれのスイッチ用に、送信要求蓄積部23−1〜23-Nを設けてもよい。
図11の構成の場合、各スイッチ10−1〜10−NからのPacket−Inメッセージは、各スイッチに対応した送信要求蓄積部23−1〜23−Nにそれぞれ蓄積される。要求処理部22Aは、生成要求処理部ごとに、上記第2の実施形態と同様に、最も広いマッチ条件に適合するPacket−Inメッセージを優先的に処理する。また、送信要求蓄積部23−1〜23−N間の優先順位としては、送信要求蓄積部23−1のPacket−InメッセージをX個処理したら、次は送信要求蓄積部23−2のPacket−InメッセージをX個処理するというようにラウンドロビン方式等を採用してもよい。なお、Xは事前に決められた値であり、例えば設定ファイル等で指定される。また、送信要求蓄積部が空の場合や、X個の処理を行う前に空になった場合は、次の送信要求蓄積部の処理に移ってもよい。
図11に示した構成によれば、以下の効果が奏出される。図8に示した構成のように送信要求蓄積部23が1つだけの場合には、単純に最も広いマッチ条件に適合するか否かにより処理順序が決まるため、広いマッチ条件に適合するPacket−Inメッセージを送信する特定のスイッチの要求だけが優先して処理される可能性がある。例えば、特定のスイッチに、たまたま広いマッチ条件にマッチするパケットが連続して到達した場合、そのスイッチからのPacket−Inメッセージの処理が優先されるため、他のスイッチのPacket−Inメッセージの処理が遅延する可能性がある。しかしながら、図11に示す構成及び動作によれば、送信要求蓄積部がスイッチ毎に分かれており、予め定めた順序で処理が行われるため、特定のスイッチのPacket−Inメッセージのみが処理されることを防止することができる。
また、上記した説明では、1回の生成要求の処理数Xは、各送信要求蓄積部23−1から23−Nで同じであったが、送信要求蓄積部毎に変えてもよい。この動作の場合は、例えば、基幹スイッチの送信要求の処理数を多くするなどの優先度をつけることが出来る。その他、各スイッチの位置やパケットの受信頻度などを考慮して各送信要求蓄積部に優先順位を設定してもよい。
なお、図11の例では、スイッチ10−1〜10−Nと送信要求蓄積部23−1〜23−Nは1対1の関係であったが、複数のスイッチの生成要求を1つの送信要求蓄積部に蓄積させてもよい。
なお、上記の非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
10、10−1〜10−N スイッチ(群)
20、20A、20B 制御装置
21 制御情報管理部
22、22A 要求処理部
23、23−1〜23−N 送信要求蓄積部
31、32 端末
20、20A、20B 制御装置
21 制御情報管理部
22、22A 要求処理部
23、23−1〜23−N 送信要求蓄積部
31、32 端末
Claims (6)
- マッチ条件を含み、該マッチ条件に適合するパケットの処理を行わせるための制御情報を管理する制御情報管理部と、
配下のスイッチから当該スイッチが受信したパケットを処理するための制御情報の送信要求のうち未処理のものを蓄積する送信要求蓄積部と、
前記制御情報管理部に管理されている制御情報のうち、マッチ条件が広い制御情報を選択し、前記送信要求蓄積部に蓄積されている未処理の制御情報の送信要求のうち、前記マッチ条件と照合するフィールドの値が前記マッチ条件の広い制御情報に適合する、未処理の制御情報の送信要求を選択し、前記未処理の制御情報の送信要求の送信元のスイッチに対し、前記マッチ条件が広い制御情報を応答する要求処理部と、
を備えることを特徴とする制御装置。 - 前記制御装置は、複数の送信要求蓄積部を有し、
前記各送信要求蓄積部は、1台もしくは2台以上の対応付けられたスイッチからの送信要求を蓄積し、
前記要求処理部は、各送信要求蓄積部毎に、未処理の制御情報の送信要求を選択して、制御情報を応答する請求項1の制御装置。 - 前記要求処理部は、送信要求蓄積部毎に予め指定された数の制御情報の送信要求を処理した後、次の送信要求処理部を選択する請求項2の制御装置。
- マッチ条件を含み、該マッチ条件に適合するパケットの処理を行わせるための制御情報を管理する制御情報管理部と、
配下のスイッチから当該スイッチが受信したパケットを処理するための制御情報の送信要求のうち未処理のものを蓄積する送信要求蓄積部と、
前記制御情報管理部に管理されている制御情報のうち、マッチ条件が広い制御情報を選択し、前記送信要求蓄積部に蓄積されている未処理の制御情報の送信要求のうち、前記マッチ条件と照合するフィールドの値が前記マッチ条件が広い制御情報に適合する、未処理の制御情報の送信要求を選択し、前記未処理の制御情報の送信要求の送信元のスイッチに対し、前記マッチ条件が広い制御情報を応答する要求処理部と、
を備えることを特徴とする制御装置と、
前記制御装置に対して、前記制御情報の送信要求を送信するスイッチと、を含む通信システム。 - マッチ条件を含み、該マッチ条件に適合するパケットの処理を行わせるための制御情報を管理する制御情報管理部を備えた制御装置が、
配下のスイッチから当該スイッチが受信したパケットを処理するための制御情報の送信要求のうち未処理のものを送信要求蓄積部に蓄積するステップと、
前記制御情報管理部に管理されている制御情報のうち、マッチ条件が広い制御情報を選択し、前記送信要求蓄積部に蓄積されている未処理の制御情報の送信要求のうち、前記マッチ条件と照合するフィールドの値が前記マッチ条件の広い制御情報に適合する、未処理の制御情報の送信要求を選択し、前記未処理の制御情報の送信要求の送信元のスイッチに対し、前記マッチ条件が広い制御情報を応答するステップと、
を含む通信方法。 - マッチ条件を含み、該マッチ条件に適合するパケットの処理を行わせるための制御情報を管理する制御情報管理部を備えた制御装置を構成するコンピュータに、
配下のスイッチから当該スイッチが受信したパケットを処理するための制御情報の送信要求のうち未処理のものを送信要求蓄積部に蓄積する処理と、
前記制御情報管理部に管理されている制御情報のうち、マッチ条件が広い制御情報を選択し、前記送信要求蓄積部に蓄積されている未処理の制御情報の送信要求のうち、前記マッチ条件と照合するフィールドの値が前記マッチ条件の広い制御情報に適合する、未処理の制御情報の送信要求を選択し、前記未処理の制御情報の送信要求の送信元のスイッチに対し、前記マッチ条件が広い制御情報を応答する処理と、
を実行させるプログラム。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012199281 | 2012-09-11 | ||
| JP2012199281 | 2012-09-11 | ||
| PCT/JP2013/074343 WO2014042141A1 (ja) | 2012-09-11 | 2013-09-10 | 制御装置、通信システム、通信方法及びプログラム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPWO2014042141A1 JPWO2014042141A1 (ja) | 2016-08-18 |
| JP6187466B2 true JP6187466B2 (ja) | 2017-08-30 |
Family
ID=50278252
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2014535544A Expired - Fee Related JP6187466B2 (ja) | 2012-09-11 | 2013-09-10 | 制御装置、通信システム、通信方法及びプログラム |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20150236953A1 (ja) |
| EP (1) | EP2897332A4 (ja) |
| JP (1) | JP6187466B2 (ja) |
| WO (1) | WO2014042141A1 (ja) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2014010724A1 (ja) * | 2012-07-13 | 2014-01-16 | 日本電気株式会社 | 制御装置、通信システム、通信方法及びプログラム |
| CN105282034B (zh) * | 2015-09-11 | 2018-11-30 | 烽火通信科技股份有限公司 | Arp/ndp学习系统及学习方法 |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3704134B2 (ja) * | 2003-05-29 | 2005-10-05 | 日本電信電話株式会社 | パケット転送装置、ネットワーク制御サーバ、およびパケット通信ネットワーク |
| WO2011118566A1 (ja) * | 2010-03-24 | 2011-09-29 | 日本電気株式会社 | パケット転送システム、制御装置、転送装置、処理規則の作成方法およびプログラム |
| WO2012011290A1 (en) * | 2010-07-23 | 2012-01-26 | Nec Corporation | Communication system, node, statistical information collection device, statistical information collection method and program |
| US9906448B2 (en) * | 2010-12-10 | 2018-02-27 | Nec Corporation | Communication system, control device, node controlling method, and program |
| US9001827B2 (en) * | 2010-12-17 | 2015-04-07 | Big Switch Networks, Inc. | Methods for configuring network switches |
| WO2012105677A1 (ja) * | 2011-02-04 | 2012-08-09 | 日本電気株式会社 | パケット処理装置、パケット処理方法およびプログラム |
| US8693344B1 (en) * | 2011-09-27 | 2014-04-08 | Big Switch Network, Inc. | Systems and methods for generating packet forwarding rules based on network policy |
| US9332479B2 (en) * | 2012-01-04 | 2016-05-03 | Ofinno Technologies, Llc | Network site for wireless communications |
-
2013
- 2013-09-10 WO PCT/JP2013/074343 patent/WO2014042141A1/ja not_active Ceased
- 2013-09-10 US US14/425,528 patent/US20150236953A1/en not_active Abandoned
- 2013-09-10 JP JP2014535544A patent/JP6187466B2/ja not_active Expired - Fee Related
- 2013-09-10 EP EP13837769.2A patent/EP2897332A4/en not_active Withdrawn
Also Published As
| Publication number | Publication date |
|---|---|
| EP2897332A1 (en) | 2015-07-22 |
| JPWO2014042141A1 (ja) | 2016-08-18 |
| WO2014042141A1 (ja) | 2014-03-20 |
| US20150236953A1 (en) | 2015-08-20 |
| EP2897332A4 (en) | 2016-04-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6418261B2 (ja) | 通信システム、ノード、制御装置、通信方法及びプログラム | |
| JP5850068B2 (ja) | 制御装置、通信システム、通信方法およびプログラム | |
| JP5915729B2 (ja) | 制御装置、通信システム及び通信装置制御方法 | |
| JP5800019B2 (ja) | 通信経路制御システム、経路制御装置、通信経路制御方法および経路制御プログラム | |
| JP6024664B2 (ja) | 通信システム、制御装置および通信方法 | |
| US20150124595A1 (en) | Communication system, access control apparatus, switch, network control method, and program | |
| JP5999251B2 (ja) | 通信システム、スイッチ、制御装置、パケット処理方法及びプログラム | |
| US20150288595A1 (en) | Control apparatus, communication system, control information creation method, and program | |
| JPWO2014112616A1 (ja) | 制御装置、通信装置、通信システム、スイッチの制御方法及びプログラム | |
| JP5725236B2 (ja) | 通信システム、ノード、パケット転送方法およびプログラム | |
| JP6011619B2 (ja) | 移動通信端末、通信方法、通信システムおよび制御装置 | |
| EP2830267A1 (en) | Control apparatus, communication system, node control method and program | |
| JP6187466B2 (ja) | 制御装置、通信システム、通信方法及びプログラム | |
| JPWO2014061583A1 (ja) | 通信ノード、制御装置、通信システム、パケット処理方法及びプログラム | |
| JP5747997B2 (ja) | 制御装置、通信システム、仮想ネットワークの管理方法およびプログラム | |
| JPWO2014010724A1 (ja) | 制御装置、通信システム、通信方法及びプログラム | |
| WO2014010723A1 (ja) | スイッチ、通信システム、スイッチ制御方法及びプログラム | |
| JP6365663B2 (ja) | 通信装置、制御装置、通信システム、受信パケットの処理方法、通信装置の制御方法及びプログラム | |
| WO2015087947A1 (ja) | 通信システム、通信ノード、制御装置、通信制御方法及びプログラム | |
| WO2014142081A1 (ja) | 転送ノード、制御装置、通信システム、パケット処理方法及びプログラム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160816 |
|
| 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: 20170704 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170717 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6187466 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |