JP5700313B2 - ネットワークシステム、フロントエンド装置、制御メッセージ送信レート低減方法 - Google Patents
ネットワークシステム、フロントエンド装置、制御メッセージ送信レート低減方法 Download PDFInfo
- Publication number
- JP5700313B2 JP5700313B2 JP2013536408A JP2013536408A JP5700313B2 JP 5700313 B2 JP5700313 B2 JP 5700313B2 JP 2013536408 A JP2013536408 A JP 2013536408A JP 2013536408 A JP2013536408 A JP 2013536408A JP 5700313 B2 JP5700313 B2 JP 5700313B2
- Authority
- JP
- Japan
- Prior art keywords
- buffer
- switch
- control message
- flow
- flow table
- 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
- 230000005540 biological transmission Effects 0.000 title claims description 36
- 238000000034 method Methods 0.000 title claims description 35
- 230000009467 reduction Effects 0.000 title claims description 11
- 239000000872 buffer Substances 0.000 claims description 128
- 230000009471 action Effects 0.000 claims description 15
- 230000003139 buffering effect Effects 0.000 claims description 14
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000012546 transfer Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/30—Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
-
- 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/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
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
- H04L47/323—Discarding or blocking control packets, e.g. ACK packets
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
本発明は、ネットワークシステムに関し、特に、スイッチとスイッチコントローラとの間の制御メッセージの送信レートを低減する技術に関する。
近年、新しいネットワーク制御の研究分野において、オープンフロー(OpenFlow)技術が提案されている。オープンフロー技術に関する先行技術文献としては、“OpenFlow: Enabling Innovation in Campus Networks”(非特許文献1)が知られている。オープンフロー技術では、通信をEnd−to−Endのフロー単位で捉え、フロー単位でネットワークの経路制御、障害回復、負荷分散、最適化を行う。オープンフロースイッチは、オープンフロープロトコルに従って、オープンフロースイッチコントローラにより追加、更新されるフローテーブルに基づいて、転送パケットをスイッチングする。
オープンフロープロトコルを利用するネットワークは、スイッチコントローラ(制御系)とスイッチ(パケット転送系)が分離されるという特徴がある。オープンフロースイッチは、パケットを受信すると、フローテーブルに該当するエントリがある場合には、エントリに定められたアクションに従ってパケットの処理を行う。一方、該当するエントリがない場合には、オープンフロースイッチコントローラにパケットの受信を通知する。オープンフロースイッチは、受信パケットに対する処理を決定できないときには、オープンフロースイッチコントローラに、受信パケットの情報を送信する。一般的に、オープンフロースイッチは、フローテーブルにエントリがない初期状態では、受信した全てのパケットを、オープンフロースイッチコントローラに送信する。
TCP(Transmission Control Protocol)のようなハンドシェークを行うフローでは、オープンフロースイッチが、端末のSYNパケットを宛先端末に対して転送しない限り、宛先端末からSYN+ACKパケットが返信されない。オープンフロースイッチは、このような仕組みを利用して、端末間の通信に対してレート制御をかけることにより、ネットワークの輻輳制御を行うことができる。
オープンフロースイッチにフローテーブルが設定され、既にサービストラヒックが流れていた場合に、オープンフロースイッチの障害等により、フローテーブルが初期化される場合がある。このような場合、オープンフロースイッチは、受信パケットの転送方法を判断できないため、受信パケット全ての情報を、オープンフロースイッチコントローラに送信する。これらのパケットには、同一のフローテーブルにヒットして転送されるはずのパケットの情報が、複数個含まれている可能性がある。オープンフロースイッチコントローラは、冗長なパケット情報を処理しなければならず、オープンフロースイッチコントローラの負荷が増大する。
オープンフロープロトコルを使用するネットワークなどのように、スイッチ(データ転送処理)とスイッチコントローラ(制御処理)が分離したアーキテクチャのネットワークでは、転送方法を判断するために、スイッチからスイッチコントローラへの転送パケットのトラヒックが多い場合が、パケット転送処理のボトルネックになる。
関連する発明としては、特開2010−45502号公報(特許文献1)が知られている。特開2010−45502号公報(特許文献1)では、スイッチコントローラ側で、高負荷状態が発生した場合に、ネットワークに与える影響が抑制される発明が開示されている。この発明では、監視マネージャが、複数のスイッチコントローラのうち、スイッチと接続されたスイッチコントローラの負荷と所定値とを比較する。比較の結果、負荷が所定値よりも大きい場合、起動されていないスイッチコントローラが新たに起動され、新たに起動されたスイッチコントローラへの接続をスイッチへ指示する。スイッチは、監視マネージャから、新たに起動されたスイッチコントローラへの接続を指示された場合、新たに起動されたスイッチコントローラへ接続要求を行う。新たに起動されたスイッチコントローラは、接続を要求するスイッチと接続し、当該スイッチを制御する。
特開2010−45502号公報では、スイッチコントローラの負荷が増大した場合に、負荷分散のためにスイッチコントローラを増やすことにより問題を解決している。スイッチコントローラにとって、冗長なパケットを処理しなければならないという課題は解決されていない。
"OpenFlow: Enabling Innovation in Campus Networks"<http://www.openflowswitch.org/documents/openflow−wp−latest.pdf>
本発明の目的は、スイッチとスイッチコントローラとの間の制御メッセージの送信レートを低減することができるネットワークシステムを提供することにある。
本発明のネットワークシステムは、スイッチフローテーブルに基づいてパケットを転送するスイッチと、前記スイッチフローテーブルを更新するスイッチコントローラと、前記スイッチと前記スイッチコントローラとの間の制御メッセージを中継するフロントエンド装置とを備えている。前記フロントエンド装置は、前記スイッチから受信した前記制御メッセージを一時的に保存するバッファと、フローテーブルを記憶するフローテーブル記憶部と、前記フローテーブルのバッファフローエントリにヒットした前記制御メッセージは、前記バッファにバッファリングし、前記フローテーブルのバッファフローエントリにヒットしなかった前記制御メッセージは、前記バッファにバッファリングせずに前記スイッチコントローラに送信するバッファ制御部とを備える。
本発明の制御メッセージ送信レート削減方法は、スイッチフローテーブルに基づいてパケットを転送するスイッチと、前記スイッチフローテーブルを更新するスイッチコントローラと、前記スイッチと前記スイッチコントローラとの間の制御メッセージを中継するフロントエンド装置とを備えるネットワークシステムにおいて実施される制御メッセージ送信レート削減方法である。本発明の制御メッセージ送信レート削減方法は、前記フロントエンド装置のバッファが、前記スイッチから受信した前記制御メッセージを一時的に保存するステップと、前記フロントエンド装置のフローテーブル記憶部が、フローテーブルを記憶するステップと、前記フロントエンド装置のバッファ制御部が、前記フローテーブルのバッファフローエントリにヒットした前記制御メッセージは、前記バッファにバッファリングするステップと、前記フロントエンド装置のバッファ制御部が、前記フローテーブルのバッファフローエントリにヒットしなかった前記制御メッセージは、前記バッファにバッファリングせずに前記スイッチコントローラに送信するステップとを含む。
本発明によれば、スイッチとスイッチコントローラとの間の制御メッセージの送信レートを低減することができるネットワークシステムを提供することができる。
添付図面を参照して、本発明の実施形態によるネットワークシステムを以下に説明する。
<構成の説明>
はじめに、本実施形態におけるネットワークシステムの構成の説明を行う。本実施形態のネットワークシステムは、フロントエンド装置10、スイッチコントローラ20及びスイッチ30を備える。図1は、本発明の実施形態におけるネットワークシステムが備えるフロントエンド装置10、スイッチコントローラ20及びスイッチ30の内部ブロック図である。
はじめに、本実施形態におけるネットワークシステムの構成の説明を行う。本実施形態のネットワークシステムは、フロントエンド装置10、スイッチコントローラ20及びスイッチ30を備える。図1は、本発明の実施形態におけるネットワークシステムが備えるフロントエンド装置10、スイッチコントローラ20及びスイッチ30の内部ブロック図である。
フロントエンド装置10は、受信部101、送信部102、バッファ103、バッファ制御部104、フローテーブル記憶部105、受信部106及び送信部107を備える。
受信部101は、スイッチ30から送信される制御メッセージを、制御回線403を介して受信する。送信部102は、受信部101で受信された制御メッセージをスイッチコントローラ20へ送信する。
バッファ103は、スイッチ30からスイッチコントローラ20に送信される制御メッセージを一時的に保存する。バッファ制御部104は、バッファ103及びフローテーブル記憶部105に記憶されているフローテーブル108を使用して、スイッチ30とスイッチコントローラ20との間の制御メッセージの送信レートを制御する。バッファ制御部104は、受信部101で受信された制御メッセージが、フローテーブル108のバッファフローエントリにヒットする場合には、受信された制御メッセージを、バッファ103でバッファリングする。また、バッファ制御部104は、受信部101で受信された制御メッセージが、フローテーブル108のスイッチフローエントリにヒットする場合には、受信されたメッセージを、スイッチ30に折り返し送信する。
受信部106は、スイッチコントローラ20から送信される制御メッセージを受信する。送信部107は、受信部106で受信された制御メッセージをスイッチ30へ送信する。
スイッチコントローラ20は、スイッチ制御部201を備える。スイッチ制御部201は、フロントエンド装置10から受信される制御メッセージに基づいて、経路計算等を行い、制御メッセージに含まれる転送パケットの情報に対応するスイッチ30の動作を決定し、スイッチ30のスイッチフローテーブルに設定するスイッチフローエントリを生成する。スイッチ制御部201は、生成されたスイッチフローエントリを、制御メッセージに載せて、スイッチ30宛に送信する。
スイッチ30は、受信部301、スイッチフローテーブル記憶部302、スイッチ制御処理部303、パケット処理部304及び送信部305を備える。
受信部301は、受信回線401を介して転送パケットを受信する。スイッチフローテーブル記憶部302は、転送パケットのヘッダ情報に基づいて、転送アクションを決定するためのスイッチフローテーブル306が記憶されている。スイッチフローテーブル306のスイッチフローエントリにヒットするパケットは、パケット処理部304によって、スイッチフローエントリで定められたアクション情報308に基づいて処理される。
スイッチ制御処理部303は、スイッチ30全体の動作を制御する。パケット処理部304は、スイッチフローテーブル306のスイッチフローエントリに規定されたアクション情報308に基づいて、ヘッダの書き換え処理や、転送パケットの出力ポートを決定する。送信部305は、送信回線402へ転送パケットを送信する。
図2は、本発明の実施形態におけるネットワークシステムの全体図である。スイッチ30−1、30−2〜30−Nは、それぞれが、フロントエンド装置10と接続され、フロントエンド装置10は、更にスイッチコントローラ20に接続されている。なお、図2では、スイッチコントローラ20からスイッチ30までの接続の状態のみが示され、スイッチ30−1、30−2〜30−Nにより実現されているネットワーク構成の状態は省略されている。スイッチ30−1〜30−Nから、スイッチコントローラ20宛に送られる制御メッセージは、フロントエンド装置10で、バッファリングの判定が行われた後、スイッチコントローラ20に送信される。
<動作方法の説明>
次に、本実施形態のネットワークシステムにおけるスイッチ30とスイッチコントローラ20との間の制御メッセージ送信レート低減方法の説明を行う。
次に、本実施形態のネットワークシステムにおけるスイッチ30とスイッチコントローラ20との間の制御メッセージ送信レート低減方法の説明を行う。
本実施形態におけるネットワークシステムは、制御メッセージの送信レートを低減するために、スイッチ30とスイッチコントローラ20との間に、制御メッセージをバッファリングするフロントエンド装置10を備える。はじめに、制御メッセージのバッファリング方法について説明する。図3は、本発明の実施形態のネットワークシステムにおいて、フロントエンド装置10による制御メッセージのバッファリング方法のフローチャートである。
まず、フロントエンド装置10のフローテーブル記憶部105に記憶されているフローテーブル108と、スイッチ30のスイッチフローテーブル記憶部302に記憶されているスイッチフローテーブル306について説明する。
図4は、本発明の実施形態のネットワークシステムにおけるスイッチフローテーブル306を説明するための図である。スイッチフローテーブル306の各エントリは、パケットヘッダ情報307及びアクション情報308を含む。スイッチフローテーブル306では、パケットヘッダ情報307毎に、パケット書き換え処理や、所定の転送先への送信処理等のアクション情報308が定められている。
図5は、本発明の実施形態のネットワークシステムにおけるフローテーブル108を説明するための図である。フローテーブル108は、フローID109、フロー種別110、パケットヘッダ情報111、アクション情報112及び登録時刻113を含む。フローID109は、フローエントリを識別するためのIDである。フロー種別110は、フローエントリの種別を示し、バッファフローエントリとスイッチフローエントリがある。パケットヘッダ情報111は、受信部101で受信された制御メッセージに含まれる、スイッチ30による転送対象のパケットのヘッダ情報である。アクション情報112は、以下に説明される、ステップS13及びステップS15の処理が定められている。すなわち、アクション情報112を変更することで、ステップS13及びステップS15の処理を変更することができる。例えば、ステップS14でヒットした制御メッセージを、バッファ101でバッファリングすることなく、廃棄する処理等に変更することができる。登録時刻113は、フローテーブル108にフローエントリを登録した時刻である。
(ステップS11)
フロントエンド装置10の受信部101が、制御回線403からパケットを受信する。バッファ制御部104は、制御メッセージのヘッダ情報を抽出し、抽出されたヘッダ情報をキーとして、フローテーブル記憶部105に記憶されているフローテーブル108に、対応するスイッチフローエントリがあるかどうか検索する。このスイッチフローエントリは、スイッチコントローラ20からフロントエンド装置10を介して、スイッチ30のスイッチフローテーブル306にスイッチフローエントリが設定される際に、フロントエンド装置10のフローテーブル108に設定されている(図6のステップS35)。
フロントエンド装置10の受信部101が、制御回線403からパケットを受信する。バッファ制御部104は、制御メッセージのヘッダ情報を抽出し、抽出されたヘッダ情報をキーとして、フローテーブル記憶部105に記憶されているフローテーブル108に、対応するスイッチフローエントリがあるかどうか検索する。このスイッチフローエントリは、スイッチコントローラ20からフロントエンド装置10を介して、スイッチ30のスイッチフローテーブル306にスイッチフローエントリが設定される際に、フロントエンド装置10のフローテーブル108に設定されている(図6のステップS35)。
(ステップS12)
バッファ制御部104は、ステップS11で抽出されたヘッダ情報がフローテーブル108のスイッチフローエントリのいずれかにヒットするか否か判定する。制御は、ヒットする場合には、ステップS13に進み、ヒットしなかった場合にはステップS14に進む。
バッファ制御部104は、ステップS11で抽出されたヘッダ情報がフローテーブル108のスイッチフローエントリのいずれかにヒットするか否か判定する。制御は、ヒットする場合には、ステップS13に進み、ヒットしなかった場合にはステップS14に進む。
(ステップS13)
バッファ制御部104は、対応するスイッチフローエントリがスイッチ30のスイッチフローテーブルにスイッチコントローラ20により既に登録されているとみなし、ヒットする制御メッセージをスイッチ30へ折り返し送信する。バッファ制御部104は、制御メッセージをスイッチ30に折り返し送信する際に、フローテーブル108のアクション情報に基づいて、制御メッセージのパケットヘッダ情報を変更する。バッファ制御部104は、スイッチ30から受信された制御メッセージのパケットヘッダ情報に含まれる「パケット受信」を示す情報を、「パケット送信」を示す情報に書き換える。
バッファ制御部104は、対応するスイッチフローエントリがスイッチ30のスイッチフローテーブルにスイッチコントローラ20により既に登録されているとみなし、ヒットする制御メッセージをスイッチ30へ折り返し送信する。バッファ制御部104は、制御メッセージをスイッチ30に折り返し送信する際に、フローテーブル108のアクション情報に基づいて、制御メッセージのパケットヘッダ情報を変更する。バッファ制御部104は、スイッチ30から受信された制御メッセージのパケットヘッダ情報に含まれる「パケット受信」を示す情報を、「パケット送信」を示す情報に書き換える。
なお、スイッチ10のスイッチフローテーブル306のスイッチフローエントリが、装置再起動等の何らかの理由で消失した場合には、再度、同一のパケットの転送に対するスイッチコントローラ10への問い合わせが発生する。このような場合を検出できずに、制御メッセージを、折り返してしまうと、スイッチ10にフロー設定が入らない状態となる。そのため、フロントエンド装置10のフローテーブル108のエントリ保持期間に、10秒程度のタイムアウトを設定してもよい。なお、当該タイムアウトの時間は、当業者が、適宜、運用環境に合わせて変更してもよい。
(ステップS14)
バッファ制御部104は、受信部101で受信された制御メッセージが、フローテーブル記憶部105に記憶されているフローテーブル108のバッファフローエントリにヒットするか判定する。ヒットする場合には、ステップS15に進み、ヒットしなかった場合にはステップS16に進む。
バッファ制御部104は、受信部101で受信された制御メッセージが、フローテーブル記憶部105に記憶されているフローテーブル108のバッファフローエントリにヒットするか判定する。ヒットする場合には、ステップS15に進み、ヒットしなかった場合にはステップS16に進む。
(ステップS15)
バッファ制御部104は、ステップS14でヒットする制御メッセージをバッファ103に保存し、スイッチコントローラ20への送信を保留する。
バッファ制御部104は、ステップS14でヒットする制御メッセージをバッファ103に保存し、スイッチコントローラ20への送信を保留する。
(ステップS16)
バッファ制御部104は、ステップS14でヒットしなかった制御メッセージに対応するフローテーブル108のバッファフローエントリを作成する。
バッファ制御部104は、ステップS14でヒットしなかった制御メッセージに対応するフローテーブル108のバッファフローエントリを作成する。
(ステップS17)
バッファ制御部104は、ステップS16でフローテーブル108のバッファフローエントリを作成した制御メッセージを、スイッチコントローラ20に送信する。
バッファ制御部104は、ステップS16でフローテーブル108のバッファフローエントリを作成した制御メッセージを、スイッチコントローラ20に送信する。
上述の制御メッセージのバッファリング方法により、フロントエンド装置10が、スイッチ30から受信された同様の制御メッセージが、スイッチコントローラ20に連続的に送信されることを防ぐことができる(バッファフローエントリにヒットする場合)。また、スイッチ30のスイッチフローテーブル306に、既に登録されているスイッチフローに対応する制御メッセージが、スイッチコントローラ20に送信されることを防ぐことができる(スイッチフローエントリにヒットする場合)。上述の制御メッセージのバッファリング方法により、フロントエンド装置10とスイッチコントローラ20の間の制御メッセージの送信レートを低減することができる。
次に、図6を参照して、フロントエンド装置10が、スイッチコントローラ20から制御メッセージを受信する際の動作方法について説明する。
(ステップS31)
フロントエンド装置10の受信部106が、スイッチコントローラ20から制御メッセージを受信する。
フロントエンド装置10の受信部106が、スイッチコントローラ20から制御メッセージを受信する。
(ステップS32)
バッファ制御部104は、制御メッセージのヘッダ情報を抽出し、抽出されたヘッダ情報をキーとして、フローテーブル記憶部105に記憶されているフローテーブル108に、対応するバッファフローエントリがあるかどうか検索する。
バッファ制御部104は、制御メッセージのヘッダ情報を抽出し、抽出されたヘッダ情報をキーとして、フローテーブル記憶部105に記憶されているフローテーブル108に、対応するバッファフローエントリがあるかどうか検索する。
(ステップS33)
バッファ制御部104は、受信部101で受信された制御メッセージが、フローテーブル108のバッファフローエントリにヒットするか判定する。ヒットする場合には、ステップS34に進み、ヒットしなかった場合にはステップS36に進む。
バッファ制御部104は、受信部101で受信された制御メッセージが、フローテーブル108のバッファフローエントリにヒットするか判定する。ヒットする場合には、ステップS34に進み、ヒットしなかった場合にはステップS36に進む。
(ステップS34)
バッファ制御部104は、ステップS33でヒットする制御メッセージに対応するフローテーブル108のバッファフローエントリを削除する。バッファ制御部104は、当該バッファフローエントリに対応するパケットヘッダ情報111を、バッファ103から取得し、当該ヒットする制御メッセージを、スイッチ30宛の適切な制御メッセージに書き換える。バッファ制御部104は、コントローラ20からの制御メッセージが「スイッチフローテーブル生成」であれば、フローテーブル108で指定されるアクションに基づいて、スイッチ30のスイッチフローテーブル306に指定する「パケット送信」の制御メッセージを生成する。バッファ制御部104は、コントローラ20からの制御メッセージが「パケット送信」であれば、当該バッファフローエントリに対応するパケットヘッダ情報111から、パケット送信先情報を取得して、「パケット送信」の制御メッセージを生成する。
バッファ制御部104は、ステップS33でヒットする制御メッセージに対応するフローテーブル108のバッファフローエントリを削除する。バッファ制御部104は、当該バッファフローエントリに対応するパケットヘッダ情報111を、バッファ103から取得し、当該ヒットする制御メッセージを、スイッチ30宛の適切な制御メッセージに書き換える。バッファ制御部104は、コントローラ20からの制御メッセージが「スイッチフローテーブル生成」であれば、フローテーブル108で指定されるアクションに基づいて、スイッチ30のスイッチフローテーブル306に指定する「パケット送信」の制御メッセージを生成する。バッファ制御部104は、コントローラ20からの制御メッセージが「パケット送信」であれば、当該バッファフローエントリに対応するパケットヘッダ情報111から、パケット送信先情報を取得して、「パケット送信」の制御メッセージを生成する。
(ステップS35)
バッファ制御部104は、受信部106で受信された制御メッセージに基づき、スイッチ30のスイッチフローテーブル306に設定するスイッチフローエントリと同一のスイッチフローエントリを、フローテーブル108に設定する。バッファ制御部104は、フローエントリの検索時には、スイッチフローエントリをバッファフローエントリよりも高い優先度で検索する。
バッファ制御部104は、受信部106で受信された制御メッセージに基づき、スイッチ30のスイッチフローテーブル306に設定するスイッチフローエントリと同一のスイッチフローエントリを、フローテーブル108に設定する。バッファ制御部104は、フローエントリの検索時には、スイッチフローエントリをバッファフローエントリよりも高い優先度で検索する。
(ステップS36)
送信部107は、受信部106で受信された制御メッセージをスイッチ30へ送信する。ステップS34により、バッファフローエントリにヒットする制御メッセージを、スイッチ30宛の適切な制御メッセージに書き換えていた場合は、書き換え後の制御メッセージをスイッチ30へ送信する。
送信部107は、受信部106で受信された制御メッセージをスイッチ30へ送信する。ステップS34により、バッファフローエントリにヒットする制御メッセージを、スイッチ30宛の適切な制御メッセージに書き換えていた場合は、書き換え後の制御メッセージをスイッチ30へ送信する。
上述の方法によって、フローテーブル108のバッファフローエントリが削除される。しかし、制御メッセージが、スイッチコントローラ20で廃棄された場合等、バッファフローエントリに対応する制御メッセージが、スイッチコントローラ20からフロントエンド装置10に送信されない場合、バッファフローエントリが記憶されたまま残る。そのため、バッファ制御部104は、フローテーブル108の登録時刻113を参照し、一定時間経過したバッファフローエントリを削除する。
バッファ103に保存されている制御メッセージについては、バッファ制御部104が、スイッチ30から受信する制御メッセージのレートを監視し、レートが一定の値以下となった場合に、バッファ103の制御メッセージを、送信部102に送り、スイッチコントローラ20へ送信する。
本実施形態によれば、スイッチ30からスイッチコントローラ20に対して、同様のメッセージが連続する場合において、フロントエンド装置10にて、制御メッセージの量を抑制することができる。また、制御メッセージに対応するスイッチフローが、スイッチフローテーブル306に既に登録されているとみなせる場合は、フロントエンド装置10に、当該制御メッセージを折り返し送信する。そのため、スイッチコントローラ20の負荷を低減することができる。
本実施形態では、図2のような構成で、フロントエンド装置10を配置したが、図7のように、各スイッチ30−1〜スイッチ30−Nにおいて、フロントエンド部10−1〜フロントエンド部10−Nとして、フロントエンド装置10のバッファリング処理を実現してもよい。
以上、本発明の実施の形態が添付の図面を参照することにより説明された。但し、本発明は、上述の実施の形態に限定されず、要旨を逸脱しない範囲で当業者により適宜変更され得る。
Claims (16)
- スイッチフローテーブルに基づいてパケットを転送するスイッチと、
前記スイッチフローテーブルを更新するスイッチコントローラと、
前記スイッチと前記スイッチコントローラとの間の制御メッセージを中継するフロントエンド装置とを備え、
前記フロントエンド装置は、
前記スイッチから受信された前記制御メッセージを一時的に保存するバッファと、
フローテーブルを記憶するフローテーブル記憶部と、
前記フローテーブルのバッファフローエントリにヒットする前記制御メッセージは、前記バッファにバッファリングし、前記フローテーブルのバッファフローエントリにヒットしない前記制御メッセージは、前記バッファにバッファリングせずに前記スイッチコントローラに送信するバッファ制御部と
を備え、
前記フローテーブルは、更にスイッチフローエントリを有し、
前記バッファ制御部は、前記スイッチフローエントリにヒットする前記制御メッセージを、前記スイッチに折り返し送信する
ネットワークシステム。 - 請求項1に記載のネットワークシステムにおいて、
前記フローテーブルは、
フローエントリを識別するためのフローIDと、
フローエントリがバッファフローエントリであるか、スイッチフローエントリであるかを示すフロー種別と、
前記制御メッセージに含まれる前記スイッチによる転送対象のパケットのヘッダ情報と、
前記ヘッダ情報を含むパケットに対するアクションを定めるアクション情報と
を有する
ネットワークシステム。 - 請求項1または2に記載のネットワークシステムにおいて、
前記バッファ制御部は、前記スイッチから受信された制御メッセージが、前記フローテーブルのバッファフローエントリにヒットしない場合には、前記ヒットしない制御メッセージに対応する前記フローテーブルのバッファフローエントリを作成し、前記スイッチから受信された制御メッセージが、前記フローテーブルのバッファフローエントリにヒットする場合には、前記対応するフローテーブルのバッファフローエントリを作成しない
ネットワークシステム。 - 請求項1乃至3のいずれかに記載のネットワークシステムにおいて、
前記バッファ制御部は、前記スイッチから受信される制御メッセージのレートを監視し、前記レートが一定の値以下となった場合には、前記バッファにバッファリングされている前記制御メッセージを、前記スイッチコントローラへ送信する
ネットワークシステム。 - 請求項1に記載のネットワークシステムにおいて、
前記バッファ制御部は、前記スイッチコントローラから前記制御メッセージが受信される際に、前記フローテーブルのバッファフローエントリを検索し、前記制御メッセージに対応する前記バッファフローエントリがある場合には、前記対応するバッファフローエントリを前記フローテーブルから削除し、前記制御メッセージに対応する前記バッファフローエントリがない場合には、スイッチフローエントリを前記フローテーブルに登録する
ネットワークシステム。 - 請求項2に記載のネットワークシステムにおいて、
前記フローテーブルの前記バッファフローエントリは、前記スイッチコントローラへ送信した制御メッセージの登録時刻を含み、
前記バッファ制御部は、前記フローテーブルの前記登録時刻を参照し、一定時間経過した前記バッファフローエントリを削除する
ネットワークシステム。 - スイッチフローテーブルに基づいてパケットを転送するスイッチと、
前記スイッチフローテーブルを更新するスイッチコントローラと、
前記スイッチと前記スイッチコントローラとの間の制御メッセージを中継するフロントエンド装置とを備えるネットワークシステムにおいて、
前記フロントエンド装置のバッファが、前記スイッチから受信された前記制御メッセージを一時的に保存するステップと、
前記フロントエンド装置のフローテーブル記憶部が、フローテーブルを記憶するステップと、
前記フロントエンド装置のバッファ制御部が、前記フローテーブルのバッファフローエントリにヒットする前記制御メッセージは、前記バッファにバッファリングするステップと、
前記フロントエンド装置のバッファ制御部が、前記フローテーブルのバッファフローエントリにヒットしなかった前記制御メッセージは、前記バッファにバッファリングせずに前記スイッチコントローラに送信するステップと
を含み、
前記フローテーブルは、更にスイッチフローエントリを有し、
前記バッファ制御部は、前記スイッチフローエントリにヒットする前記制御メッセージを前記スイッチに折り返し送信するステップを更に含む
制御メッセージ送信レート低減方法。 - 請求項7に記載の制御メッセージ送信レート低減方法において、
前記フロントエンド装置のバッファ制御部が、前記スイッチから受信された制御メッセージが、前記フローテーブルのバッファフローエントリにヒットしない場合には、前記ヒットしなかった制御メッセージに対応する前記フローテーブルのバッファフローエントリを作成するステップを更に含む
制御メッセージ送信レート低減方法。 - 請求項7または8に記載の制御メッセージ送信レート低減方法において、
前記フロントエンド装置のバッファ制御部が、前記スイッチから受信する制御メッセージのレートを監視するステップと、
前記フロントエンド装置のバッファ制御部が、前記レートが一定の値以下となった場合には、前記バッファにバッファリングされている前記制御メッセージを、前記スイッチコントローラへ送信するステップと
を更に含む
制御メッセージ送信レート低減方法。 - 請求項7に記載の制御メッセージ送信レート低減方法において、
前記フロントエンド装置のバッファ制御部が、前記スイッチコントローラから前記制御メッセージを受信された際に、前記フローテーブルのバッファフローエントリを検索するステップと、
前記フロントエンド装置のバッファ制御部が、前記制御メッセージに対応する前記バッファフローエントリがある場合には、前記対応するバッファフローエントリを前記フローテーブルから削除するステップと、
前記フロントエンド装置のバッファ制御部が、前記制御メッセージに対応する前記バッファフローエントリがない場合には、スイッチフローエントリを前記フローテーブルに登録するステップと
を更に含む
制御メッセージ送信レート低減方法。 - 請求項7乃至10のいずれかに記載の制御メッセージ送信レート低減方法において、
前記フローテーブルの前記バッファフローエントリは、前記スイッチコントローラへ送信した制御メッセージの登録時刻を含み、
前記フロントエンド装置のバッファ制御部が、前記フローテーブルの前記登録時刻を参照するステップと、
前記フロントエンド装置のバッファ制御部が、一定時間経過した前記バッファフローエントリを削除するステップと
を更に含む
制御メッセージ送信レート低減方法。 - スイッチフローテーブルに基づいてパケットを転送するスイッチと、前記スイッチフローテーブルを更新するスイッチコントローラとの間の制御メッセージを中継するフロントエンド装置であって、
スイッチから受信された前記制御メッセージを一時的に保存するバッファと、
フローテーブルを記憶するフローテーブル記憶部と、
前記フローテーブルのバッファフローエントリにヒットする前記制御メッセージは、前記バッファにバッファリングし、前記フローテーブルのバッファフローエントリにヒットしない前記制御メッセージは、前記バッファにバッファリングせずに前記スイッチコントローラに送信するバッファ制御部と
を備え、
前記フローテーブルは、更にスイッチフローエントリを有し、
前記バッファ制御部は、前記スイッチフローエントリにヒットする前記制御メッセージを、前記スイッチに折り返し送信する
フロントエンド装置。 - 請求項12に記載のフロントエンド装置において、
前記フローテーブルは、
フローエントリを識別するためのフローIDと、
フローエントリがバッファフローエントリであるか、スイッチフローエントリであるかを示すフロー種別と、
前記制御メッセージに含まれる前記スイッチによる転送対象のパケットのヘッダ情報と、
前記ヘッダ情報を含むパケットに対するアクションを定めるアクション情報と
を有する
フロントエンド装置。 - 請求項12または13に記載のフロントエンド装置において、
前記バッファ制御部は、前記スイッチから受信された制御メッセージが、前記フローテーブルのバッファフローエントリにヒットしない場合には、前記ヒットしない制御メッセージに対応する前記フローテーブルのバッファフローエントリを作成し、前記スイッチから受信された制御メッセージが、前記フローテーブルのバッファフローエントリにヒットする場合には、前記対応するフローテーブルのバッファフローエントリを作成しない
フロントエンド装置。 - 請求項12乃至14のいずれかに記載のフロントエンド装置において、
前記バッファ制御部は、前記スイッチから受信される制御メッセージのレートを監視し、前記レートが一定の値以下となった場合には、前記バッファにバッファリングされている前記制御メッセージを、前記スイッチコントローラへ送信する
フロントエンド装置。 - 請求項7乃至11のいずれかに記載の制御メッセージ送信レート低減方法を達成するための計算機実行可能な制御メッセージ送信レート低減プログラムを格納する計算機読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013536408A JP5700313B2 (ja) | 2011-09-27 | 2012-09-27 | ネットワークシステム、フロントエンド装置、制御メッセージ送信レート低減方法 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011210456 | 2011-09-27 | ||
JP2011210456 | 2011-09-27 | ||
JP2013536408A JP5700313B2 (ja) | 2011-09-27 | 2012-09-27 | ネットワークシステム、フロントエンド装置、制御メッセージ送信レート低減方法 |
PCT/JP2012/074976 WO2013047705A1 (ja) | 2011-09-27 | 2012-09-27 | ネットワークシステム、フロントエンド装置、制御メッセージ送信レート低減方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2013047705A1 JPWO2013047705A1 (ja) | 2015-03-26 |
JP5700313B2 true JP5700313B2 (ja) | 2015-04-15 |
Family
ID=47995732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013536408A Expired - Fee Related JP5700313B2 (ja) | 2011-09-27 | 2012-09-27 | ネットワークシステム、フロントエンド装置、制御メッセージ送信レート低減方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9608924B2 (ja) |
EP (1) | EP2763358A4 (ja) |
JP (1) | JP5700313B2 (ja) |
CN (1) | CN103828313B (ja) |
WO (1) | WO2013047705A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3091705B1 (en) * | 2014-01-23 | 2018-09-05 | Huawei Technologies Co., Ltd. | Tunnel processing method for packet, switching device and control device |
CN104954271B (zh) * | 2014-03-26 | 2018-11-30 | 国际商业机器公司 | Sdn网络中的数据包处理方法和装置 |
WO2015161409A1 (zh) * | 2014-04-21 | 2015-10-29 | 华为技术有限公司 | 一种负载均衡的实现方法及设备、系统 |
CN106034077B (zh) * | 2015-03-18 | 2019-06-28 | 华为技术有限公司 | 一种动态路由配置方法、装置及系统 |
KR102284953B1 (ko) * | 2016-01-13 | 2021-08-03 | 삼성전자 주식회사 | 소프트웨어 정의 네트워크 기반 이동통신 시스템에서 제어 메시지 전송 방법 및 장치 |
JP6870273B2 (ja) * | 2016-10-25 | 2021-05-12 | 住友電気工業株式会社 | 通信制御装置、スイッチ装置、車外通信装置、通信制御方法および通信制御プログラム |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004304371A (ja) * | 2003-03-28 | 2004-10-28 | Fujitsu Ltd | レイヤ2のスイッチング装置 |
JP2005117206A (ja) | 2003-10-06 | 2005-04-28 | Hitachi Ltd | ネットワークプロセッサアクセラレータ |
JP4559511B2 (ja) | 2008-08-11 | 2010-10-06 | 日本電信電話株式会社 | パケット転送システムおよびパケット転送方法 |
WO2010103909A1 (ja) | 2009-03-09 | 2010-09-16 | 日本電気株式会社 | OpenFlow通信システムおよびOpenFlow通信方法 |
JP5614410B2 (ja) * | 2009-11-27 | 2014-10-29 | 日本電気株式会社 | フロー制御装置、ネットワークシステム、ネットワーク制御方法およびプログラム |
JP5382451B2 (ja) * | 2010-01-29 | 2014-01-08 | 日本電気株式会社 | フロントエンドシステム、フロントエンド処理方法 |
KR101495126B1 (ko) | 2010-03-17 | 2015-02-24 | 닛본 덴끼 가부시끼가이샤 | 통신 시스템, 노드, 제어 서버 및 통신 방법 |
-
2012
- 2012-09-27 WO PCT/JP2012/074976 patent/WO2013047705A1/ja active Application Filing
- 2012-09-27 US US14/347,730 patent/US9608924B2/en active Active
- 2012-09-27 EP EP12834649.1A patent/EP2763358A4/en not_active Withdrawn
- 2012-09-27 JP JP2013536408A patent/JP5700313B2/ja not_active Expired - Fee Related
- 2012-09-27 CN CN201280047293.8A patent/CN103828313B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPWO2013047705A1 (ja) | 2015-03-26 |
CN103828313A (zh) | 2014-05-28 |
WO2013047705A1 (ja) | 2013-04-04 |
US20140233393A1 (en) | 2014-08-21 |
EP2763358A1 (en) | 2014-08-06 |
US9608924B2 (en) | 2017-03-28 |
EP2763358A4 (en) | 2015-05-27 |
CN103828313B (zh) | 2017-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8737215B2 (en) | Packet forwarding apparatus, communication system, process rule update method, and program | |
JP5967090B2 (ja) | 通信システム、制御装置、ノードの制御方法およびプログラム | |
JP5700313B2 (ja) | ネットワークシステム、フロントエンド装置、制御メッセージ送信レート低減方法 | |
KR101434375B1 (ko) | 플로우 통신 시스템 | |
KR101529950B1 (ko) | 통신 시스템, 정보 처리 장치, 통신 노드, 통신 방법, 및 프로그램을 기록한 컴퓨터 판독가능한 기록 매체 | |
WO2018210117A1 (zh) | 一种拥塞控制方法、网络设备及其网络接口控制器 | |
JP5939353B2 (ja) | 制御装置、通信システム、スイッチ制御方法及びプログラム | |
JP5800019B2 (ja) | 通信経路制御システム、経路制御装置、通信経路制御方法および経路制御プログラム | |
TWI542172B (zh) | 路徑更換方法與系統及其控制器 | |
WO2011083682A1 (ja) | スイッチネットワークシステム、コントローラ、及び制御方法 | |
JP2015029356A (ja) | 制御装置、通信システム、制御方法及びプログラム | |
JP5725236B2 (ja) | 通信システム、ノード、パケット転送方法およびプログラム | |
US20120155268A1 (en) | Packet relay device | |
JP2008118281A (ja) | 通信装置 | |
JP5935897B2 (ja) | 通信ノード、通信システム、制御装置、パケット転送方法及びプログラム | |
WO2014104277A1 (ja) | 制御装置、通信システム、通信ノードの制御方法及びプログラム | |
JP5071245B2 (ja) | パケットの交換装置及びプログラム | |
JP6365663B2 (ja) | 通信装置、制御装置、通信システム、受信パケットの処理方法、通信装置の制御方法及びプログラム | |
JP2011151718A (ja) | ネットワークシステム、通信方法、装置およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141224 |
|
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: 20150123 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150205 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5700313 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |