JP2011160363A - Computer system, controller, switch, and communication method - Google Patents
Computer system, controller, switch, and communication method Download PDFInfo
- Publication number
- JP2011160363A JP2011160363A JP2010022539A JP2010022539A JP2011160363A JP 2011160363 A JP2011160363 A JP 2011160363A JP 2010022539 A JP2010022539 A JP 2010022539A JP 2010022539 A JP2010022539 A JP 2010022539A JP 2011160363 A JP2011160363 A JP 2011160363A
- Authority
- JP
- Japan
- Prior art keywords
- switch
- route
- flow
- information
- flow entry
- 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.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、コンピュータシステム、コントローラ、スイッチ及び通信方法に関し、特に、オープンフロー(プログラマブルフロー)技術を利用したコンピュータシステムの冗長化技術、及び通信方法に関する。 The present invention relates to a computer system, a controller, a switch, and a communication method, and more particularly to a computer system redundancy technology and a communication method using open flow (programmable flow) technology.
従来、パケットの送信元から送信先への経路の決定とパケット転送処理は、経路上の複数のスイッチが行っていた。近年、データセンターといった大規模ネットワークにおいては、故障による機器の停止や規模拡大のための機器の新規追加により、ネットワーク構成の変化が常に発生している。このため、ネットワークの構成の変化に即応し適切な経路を決定するという柔軟性が必要となってきた。しかし、スイッチにおける経路決定処理のプログラムは、外部から変更することができないため、ネットワーク全体を一元的に制御及び管理することはできなかった。 Conventionally, the determination of the route from the packet source to the destination and the packet transfer processing have been performed by a plurality of switches on the route. In recent years, in a large-scale network such as a data center, a change in the network configuration has always occurred due to a stop of a device due to a failure or a new addition of a device for expanding the scale. For this reason, it has become necessary to have the flexibility to determine an appropriate route in response to changes in the network configuration. However, since the route determination processing program in the switch cannot be changed from the outside, the entire network cannot be controlled and managed centrally.
一方、コンピュータネットワークにおいて、各スイッチの転送動作等を外部のコントローラによって一元的に制御する技術(オープンフロー)が、OpenFlow Consortiumによって提案されている(非特許文献1参照)。この技術に対応したネットワークスイッチ(以下、プログラマブルフロースイッチ(PFS)と称す)は、プロトコル種別やポート番号等の詳細な情報をフローテーブルに保持し、フローの制御と統計情報の採取を行うことができる。 On the other hand, in the computer network, a technique (open flow) for centrally controlling the transfer operation of each switch by an external controller has been proposed by the OpenFlow Consortium (see Non-Patent Document 1). A network switch (hereinafter referred to as a programmable flow switch (PFS)) that supports this technology holds detailed information such as protocol type and port number in a flow table, and can control the flow and collect statistical information. it can.
図1を参照して、オープンフローを利用したコンピュータシステムの構成及び動作を説明する。図1を参照して、本発明の関連技術によるコンピュータシステムは、プログラマブルフローコントローラ100(以下、PFC100と称す)、複数のプログラマブルスイッチ102−1〜102−n(以下、PFS102−1〜102−nと称す)を有するスイッチ群200、複数のホストコンピュータ103−1〜103−i(以下、ホスト103−1〜103−iと称す)を有するホスト群300を具備する。ただし、n、iは2以上の自然数である。以下、PFS102−1〜102−nを区別せずに総称する場合はPFS102と称し、ホスト103−1〜103−iを区別せずに総称する場合はホスト103と称して説明する。
The configuration and operation of a computer system using OpenFlow will be described with reference to FIG. Referring to FIG. 1, a computer system according to a related technique of the present invention includes a programmable flow controller 100 (hereinafter referred to as PFC 100), a plurality of programmable switches 102-1 to 102-n (hereinafter referred to as PFSs 102-1 to 102-n). And a
PFC100は、ホスト103間の通信経路の設定や、経路上におけるPFS102に対する転送動作(中継動作)等の設定を行う。この際、PFC100は、PFS102が保持するフローテーブルに、フロー(パケットデータ)を特定するルールと、当該フローに対する動作を規定するアクションとを対応付けたフローエントリを設定する。通信経路上のPFS102は、PFC100によって設定されたフローエントリに従って受信パケットデータの転送先を決定し、転送処理を行う。これにより、ホスト103は、PFC100によって設定された通信経路を利用して他のホスト103との間でパケットデータの送受信が可能となる。すなわち、オープンフローを利用したコンピュータシステムでは、通信経路を設定するPFC100と、転送処理を行うPFS102とを分離され、システム全体の通信を一元的に制御及び管理することが可能となる。
The
図1を参照して、ホスト103−1からホスト103−iへパケット送信を行う場合、PFS102−1はホスト103−1から受け取ったパケット内にある送信先情報(ヘッダ情報)を参照し、PFS102−1内部で保持しているフローテーブルから当該ヘッダ情報に適合するエントリを探す。フローテーブルに設定されるエントリの内容については、例えば非特許文献1で規定されている。
Referring to FIG. 1, when packet transmission is performed from the host 103-1 to the host 103-i, the PFS 102-1 refers to transmission destination information (header information) in the packet received from the host 103-1, and the PFS 102 -1 An entry that matches the header information is searched from the flow table held inside. The contents of entries set in the flow table are defined in
PFS102−1は、受信パケットデータについてのエントリがフローテーブルに記載されていない場合、当該パケットデータ(以下、ファーストパケットと称す)、又はファーストパケットのヘッダ情報をPFC101に転送する。PFS102−1からファーストパケットを受け取ったPFC101はパケット内に含まれている送信元ホストや送信先ホストという情報を元に経路400を決定する。
When the entry for the received packet data is not described in the flow table, the PFS 102-1 transfers the packet data (hereinafter referred to as the first packet) or the header information of the first packet to the PFC 101. The PFC 101 that has received the first packet from the PFS 102-1 determines the
PFC101は、経路400上の全てのPFS102に対して、パケットの転送先を規定するフローエントリの設定を指示する(フローテーブル更新指示を発行)。経路400上のPFS102は、フローテーブル更新指示に応じて、自身で管理しているフローテーブルを更新する。この後PFS102は、更新したフローテーブルに従い、パケットの転送を開始することで、PFC101が決定した経路400を経由して、宛先のホスト103−iへパケットが到達するようになる。
The PFC 101 instructs all
一方、ネットワークにおける転送経路を1つの装置で集中制御するシステムが、例えば特開2009−153184(特許文献1参照)や特表2009−529811に記載されている(特許文献2参照)。 On the other hand, a system that centrally controls a transfer path in a network with a single device is described in, for example, Japanese Unexamined Patent Application Publication No. 2009-153184 (see Patent Document 1) and Special Table 2009-529811 (see Patent Document 2).
PFC100で何らかの障害が発生した場合、PFC100は、経路上のPFS102に対するフローテーブルの更新を指示できない。この場合、ファーストパケットを受信したPFS102は自ら設定したタイムアウト時間までPFC101からのフローテーブルの更新指示を待ち続けてしまい、その間ホスト103間のパケット通信を行うことができない。又、PFC100が障害から復旧しない限り、ファーストパケットに対応する転送制御を行うことができない。
When any failure occurs in the
このため、耐障害性の観点からPFC100を複数用意することが考えられるが、複数のPFCを利用した通信経路の構築(各PFSに対するフローテーブルの更新)の方法は、未だ確立されていない。このため、オープンフロー技術を利用したコンピュータシステムでは、PFCに発生した障害に対する耐性が低いという問題がある。
For this reason, it is conceivable to prepare a plurality of
従って、本発明による目的は、オープンフロー技術を利用したコンピュータシステムの耐障害性を向上させることにある。 Accordingly, an object of the present invention is to improve the fault tolerance of a computer system using open flow technology.
又、本発明による他の目的は、プログラマブルフローコントローラに障害が発生した場合でも、ファーストパケットに応じた通信経路の構築とパケットデータの転送処理を早期に実行することにある。 Another object of the present invention is to perform early construction of a communication path according to a first packet and transfer processing of packet data even when a failure occurs in the programmable flow controller.
上記の課題を解決するために、本発明は、以下に述べられる手段を採用する。その手段を構成する技術的事項の記述には、[特許請求の範囲]の記載と[発明を実施するための形態]の記載との対応関係を明らかにするために、[発明を実施するための形態]で使用される番号・符号が付加されている。ただし、付加された番号・符号は、[特許請求の範囲]に記載されている発明の技術的範囲を限定的に解釈するために用いてはならない。 In order to solve the above problems, the present invention employs the means described below. In the description of technical matters constituting the means, in order to clarify the correspondence between the description of [Claims] and the description of [Mode for Carrying Out the Invention] The number / symbol used in [Form] is added. However, the added numbers and symbols should not be used to limit the technical scope of the invention described in [Claims].
本発明によるコンピュータシステムは、それぞれが、通信経路を算出し、通信経路上のスイッチ(2)に対して、フローエントリの設定を指示する複数のコントローラ(1)と、複数のコントローラ(1)の1つを経路決定者として指定し、経路決定者によって設定されたフローエントリに従って、受信パケットの中継処理を行う複数のスイッチ(2)とを具備する。 The computer system according to the present invention includes a plurality of controllers (1) each of which calculates a communication path and instructs a switch (2) on the communication path to set a flow entry, and a plurality of controllers (1). A plurality of switches (2) which designate one as a route determiner and perform relay processing of received packets according to a flow entry set by the route determiner.
本発明による通信システムは、複数のコントローラ(1)のそれぞれが、通信経路を算出し、通信経路上のスイッチ(2)に対して、フローエントリの設定を指示するステップと、複数のコントローラ(1)の1つを経路決定者として指定するステップと、複数のスイッチ(2)が、経路決定者によって設定されたフローエントリに従って、受信パケットの中継処理を行うステップとを具備する。 In the communication system according to the present invention, each of a plurality of controllers (1) calculates a communication path, instructs the switch (2) on the communication path to set a flow entry, and a plurality of controllers (1 ) As a route determiner, and a plurality of switches (2) perform a relay process of received packets in accordance with the flow entry set by the route determiner.
本発明によれば、オープンフロー技術を利用したコンピュータシステムの耐障害性を向上させることができる。 According to the present invention, it is possible to improve fault tolerance of a computer system using the open flow technology.
又、プログラマブルフローコントローラに障害が発生した場合でも、ファーストパケットに応じた通信経路の構築とパケットデータの転送処理を早期に実行することができる。 Even when a failure occurs in the programmable flow controller, the construction of the communication path according to the first packet and the packet data transfer process can be executed at an early stage.
以下、添付図面を参照しながら本発明の実施の形態を説明する。図面において同一、又は類似の参照符号は、同一、類似、又は等価な構成要素を示す。 Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. In the drawings, the same or similar reference numerals indicate the same, similar, or equivalent components.
(コンピュータシステムの構成)
図2を参照して、本発明によるコンピュータシステムの構成を説明する。図2は、本発明によるコンピュータシステムの実施の形態における構成を示す図である。本発明によるコンピュータシステムは、オープンフローを利用して通信経路の構築及びパケットデータの転送制御を行う。図2を参照して、本発明によるコンピュータシステムは、プログラマブルフローコントローラ1−1〜1−m(以下、PFC1−1〜1−mと称す)、複数のプログラマブルスイッチ2−1〜2−n(以下、PFS2−1〜2−nと称す)を有するスイッチ群20、複数のホストコンピュータ3−1〜3−i(以下、ホスト3−1〜3−iと称す)を有するホスト群30を具備する。ただし、m、n、iは2以上の自然数である。又、PFC1−1〜1−mを区別せずに総称する場合はPFC1と称し、PFS2−1〜2−nを区別せずに総称する場合はPFS2と称し、ホスト3−1〜3−iを区別せずに総称する場合はホスト3と称して説明する。
(Computer system configuration)
The configuration of the computer system according to the present invention will be described with reference to FIG. FIG. 2 is a diagram showing a configuration in the embodiment of the computer system according to the present invention. The computer system according to the present invention performs communication path construction and packet data transfer control using OpenFlow. Referring to FIG. 2, the computer system according to the present invention includes a programmable flow controller 1-1 to 1-m (hereinafter referred to as PFC 1-1 to 1-m), a plurality of programmable switches 2-1 to 2-n ( Hereinafter, a
ホスト3は、図示しないCPU、主記憶装置、及び外部記憶装置を備えるコンピュータ装置であり、外部記憶装置に格納されたプログラムを実行することで、他のホスト3との間で通信を行う。ホスト3間の通信は、スイッチ群20を介して行われる。ホスト3は、実行するプログラムに応じて、Webサーバ、ファイルサーバ、アプリケーションサーバ、あるいはクライアント端末等に例示される機能を実現する。例えば、ホスト3がWebサーバとして機能する場合、他のホスト3(例示:クライアント端末)の要求に従い、記憶装置(図示なし)内のHTML文書や画像データを他のホスト3(例示:クライアント端末)に転送する。
The host 3 is a computer device including a CPU, a main storage device, and an external storage device (not shown), and communicates with other hosts 3 by executing a program stored in the external storage device. Communication between the hosts 3 is performed via the
PFC1は、オープンフロー技術により、システム内におけるパケット転送に係る通信経路パケット転送処理を制御するスイッチ制御部11を備える。オープンフロー技術とは、コントローラ(ここではPFC1)が、ルーティングポリシー(フローエントリ:フロー+アクション)に従い、マルチレイヤ及びフロー単位の経路情報をPFS2に設定し、経路制御やノード制御を行う技術を示す(詳細は、非特許文献1を参照)。これにより、経路制御機能がルータやスイッチから分離され、コントローラによる集中制御によって最適なルーティング、トラフィック管理が可能となる。オープンフロー技術が適用されるPFS2は、従来のルータやスイッチのようにパケットやフレームの単位ではなく、END2ENDのフローとして通信を取り扱う。
The
PFC1は、PFS2が保持するフローテーブル25にフローエントリ(ルール+アクション)を設定することで当該PFS2の動作(例えばパケットデータの中継動作や廃棄)を制御する。本発明によるPFC1は、PFC1自身に付与(又は予め設定された)識別子(以下、コントローラID17と称す)を加えたフローエントリを、経路上のPFS2に設定する。
The
図3を参照して、PFC1の構成の詳細を説明する。図3は、本発明によるPFC1の構成を示す図である。PFC1は、CPU及び記憶装置を備えるコンピュータによって実現されることが好適である。PFC1では、図示しないCPUが記憶装置に格納されたプログラムを実行することで、図3に示すスイッチ制御部11、フロー管理部12、フロー生成部13の各機能が実現される。又、PFC1は、それぞれが図示しない記憶装置に格納されたフローテーブル14、トポロジ情報15、通信経路情報16、及びコントローラID17を備える。尚、コントローラID17は、予めPFC1毎にユニークに設定されていても良いし、PFS2からの通知されたコントローラID17が設定されても良い。
Details of the configuration of the
スイッチ制御部11は、フローテーブル14に従ってPFS2毎にフローエントリ(ルール+アクション)の設定又は削除を行う。この際、スイッチ制御部11は、フローエントリ(ルール+アクション情報)にコントローラID17を対応付けてPFS2のフローテーブル25に設定する。又、PFS2に対するフローテーブルの更新(フローエントリの設定又は削除)は、通信経路上においてフローの宛先装置側から送信元装置に向かって順に行われる。PFS2は、設定された少なくとも1つのフローエントリ中から選択したフローエントリを参照し、受信パケットのヘッダ情報に応じたルールに対応するアクション(例えばパケットデータの中継や破棄)を実行する。ルール、アクションの詳細は後述する。
The
図4は、PFC1が保持するフローテーブル14の構成の一例を示す図である。図4を参照して、フローテーブル14には、フローエントリを特定するためのフロー識別子141、当該フローエントリの設定対象(PFS2)を識別する識別子(対象装置142)、経路情報143、ルール144、アクション情報145、設定情報146、経路決定者識別子147が対応付けられて設定される。フローテーブル14には、PFC1の制御対象となる全てのPFS2に対して生成されたフローエントリ(ルール144+アクション情報145)が設定される。又、フローテーブル14には、フロー毎のQoSや暗号化に関する情報など、通信の扱い方が定義されても構わない。
FIG. 4 is a diagram illustrating an example of the configuration of the flow table 14 held by the
ルール144には、例えば、TCP/IPのパケットデータにおけるヘッダ情報に含まれる、OSI(Open Systems Interconnection)参照モデルのレイヤ1からレイヤ4のアドレスや識別子の組み合わせが規定される。例えば、図9に示すレイヤ1の物理ポート、レイヤ2のMACアドレス、レイヤ3のIPアドレス、レイヤ4のポート番号、VLANタグ(VLAN id)のそれぞれの組み合わせがルール144として設定される。尚、VLANタグには、優先順位(VLAN Priority)が付与されていても良い。
The
ここで、ルール144に設定されるポート番号等の識別子やアドレス等は、所定の範囲で設定されても構わない。又、宛先や送信元のアドレス等を区別してルール144として設定されルことが好ましい。例えば、MAC宛先アドレスの範囲や、接続先のアプリケーションを特定する宛先ポート番号の範囲、接続元のアプリケーションを特定する送信元ポート番号の範囲がルール144として設定される。更に、データ転送プロトコルを特定する識別子をルール144として設定してもよい。
Here, identifiers such as port numbers and addresses set in the
アクション情報145には、例えばTCP/IPのパケットデータを処理する方法が規定される。例えば、受信パケットデータを中継するか否かを示す情報や、中継する場合はその送信先が設定される。又、アクション情報145には、パケットデータの複製や、破棄することを指示する情報が設定されてもよい。
The
経路情報143は、フローエントリ(ルール144+アクション情報145)を適用する経路を特定する情報である。これは、後述する通信経路情報16に対応付けられた識別子である。
The
設定情報146は、フローエントリ(ルール144+アクション情報145)が現在、通信経路上のPFS2に設定されているか否かを示す情報(「設定済み」又は「未設定」)を含む。設定情報146は、対象装置142や経路情報143に対応付けられているため、通信経路にフローエントリが設定されているか否かを確認できるとともに、通信経路上のPFS2毎にフローエントリが設定されているか否かを確認することができる。
The setting
本発明によるフローテーブル14には、フローエントリ毎に経路決定者識別子147が設定される。本発明によるPFS2は、自身に設定された少なくとも1つのフローエントリの中から、パケット転送に利用するフローエントリを選択し、当該フローエントリを設定したPFC1を経路決定者に指定する。PFC1は、経路決定者識別子147として、経路決定者に指定されたか否かを示す情報をフローエントリ毎に記録する。例えば、経路決定者識別子147として、経路決定者として指定されたPFC1(自身)のコントローラID17が記録される。この場合、コントローラID17が対応付けられていないフローエントリ(ルール144+アクション145)は使用されず、他のPFC1が設定したフローエントリが使用されたものと確認できる。あるいは、PFS2から経路決定者として指定された場合、経路決定者識別子147として初期値(例えば“0”)と異なる値(例えば“1”)を設定してもよい。この場合、経路決定者として指定されない場合は、経路決定者識別子147が初期値を維持する。以上のように、本発明によるPFC1は、経路決定者識別子147を確認することで、自身が経路決定者か否かをフロー毎に確認できる。
In the flow table 14 according to the present invention, a
フロー管理部12は、フロー生成部13によって生成されたフロー(ルール144+アクション情報145)にフロー識別子141をつけて記憶装置に記録する。この際、フローエントリを適用する通信経路の識別子(経路情報143)やフローエントリを適用するPFS2の識別子(対象装置142)、及び経路決定者識別子147が、フローエントリ(ルール144+アクション情報145)に付されて記録される。ここで、フロー管理部12は、PFS2から経路決定者に指定された場合、自身が経路決定者に指定されたことを示す情報を経路決定者識別子147に設定する。
The
又、フロー管理部12は、フローテーブル14を参照して、ファーストパケットのヘッダ情報に対応するフローエントリ(ルール144+アクション情報145)を抽出し、スイッチ制御部11に通知する。スイッチ制御部11は、通知されたフローエントリ(ルール144+アクション情報145)にコントローラIDを付加し、当該フローエントリに対応付けられた対象装置142(PFS2)に設定する。
Further, the
フロー生成部13は、PFS2から通知されたファーストパケットのヘッダ情報から通信経路を算出し、当該通信経路上のPFS2に設定するフローエントリ(ルール144+アクション情報145)を生成する。詳細には、フロー生成部13は、ファーストパケットのヘッダ情報から、送信元のホスト3と宛先のホスト3を特定し、トポロジ情報15を用いて通信経路を算出し、算出結果を通信経路情報16として記憶装置に記録する。ここでは、通信経路の端点となるホスト3と、通信経路上のPFS2及びそれぞれの接続関係が通信経路情報16として設定される。又、フロー生成部13は、通信経路情報16に基づいて通信経路上のPFS2に設定するフローエントリ(ルール144+アクション情報145)を設定する。
The
図5は、本発明によるPFC1が保持するトポロジ情報15の一例を示す図である。トポロジ情報15は、PFS2やホスト3等の接続状況に関する情報を含む。具体的には、トポロジ情報15として、PFS2やホスト3を特定する装置識別子151に、当該装置のポート数152やポート接続先情報153が対応付けられて記憶装置に記録される。ポート接続先情報153は、接続相手を特定する接続種別(スイッチ/ノード/外部ネットワーク)や接続先を特定する情報(PFS2の場合はスイッチID、ホストの場合はMACアドレス、外部ネットワーク(例示:インターネット)の場合は外部ネットワークID)が含まれる。
FIG. 5 is a diagram showing an example of the
図6は、本発明によるPFC1が保持する通信経路情報の一例を示す図である。通信経路情報16は、通信経路を特定するための情報である。詳細には、通信経路情報16として、ホスト3や外部ネットワークインタフェース(図示なし)を端点として指定する端点情報161と、通過するPFS2とポートの対群を指定する通過スイッチ情報162と、付随情報163とが対応付けられて記憶装置に記録される。例えば、通信経路がホスト3間を接続する経路である場合、各ホスト3のMACアドレスが端点情報161として記録される。通過スイッチ情報162は、端点情報161で示される端点間の通信経路上に設けられるPFS2の識別子を含む。又、通過スイッチ情報162は、当該PFS2に設定されるフローエントリ(ルール144+アクション情報145)と当該PFS2とを対応づけるための情報を含んでも良い。付随情報163は、端点が変更された後の経路上のPFS2(通過スイッチ)に関する情報を含む。
FIG. 6 is a diagram showing an example of communication path information held by the
以上のような構成により、本発明によるPFC1は、PFS2からのファーストパケットの受信通知(フローエントリの設定要求)に応じて、当該パケットを転送させるためのフローエントリを生成するとともに、生成したフローエントリを、算出した通信経路上のPFS2に設定する。この際、設定するフローエントリには、PFC1に固有のコントローラID17が対応付けられている。
With the configuration as described above, the
図7は、本発明によるPFS2の実施の形態における構成を示す図である。PFS2は、PFC1によって設定(更新)されたフローテーブル25に従って受信パケットの処理方法(アクション)を決定する。PFS2は、転送処理部21、フロー設定部22、経路決定者設定部23、パケット修正部24を備える。転送処理部21、フロー設定部22、経路決定者設定部23、パケット修正部24は、ハードウェアで構成されても、CPUによって実行されるソフトウェアで実現してもどちらでも良い。
FIG. 7 is a diagram showing a configuration in the embodiment of the
PFS2の記憶装置には、図8に示すようなフローテーブル25が設定される。フローテーブル25は、PFC1によるフローエントリ設定指示(フローテーブル更新指示)に応じて、PFC1から送信されたフローエントリ(ルール144+アクション情報145)及びコントローラID17が対応付けられて設定される。コントローラID17により、フローテーブル25に設定されたフローエントリ(アクション情報145)がどのPFC1によって設定されたかを確認することができる。
A flow table 25 as shown in FIG. 8 is set in the storage device of the PFS2. The flow table 25 is set in association with the flow entry (
本発明では、同じルール144に対して複数のアクション情報145が設定され得る。このため、受信パケットに対する処理(アクション)を一義的に決めるための経路決定者識別子231が、処理に使用するフローエントリのルール144に対応付けられて設定される。本発明では、PFS2に設定されるフローエントリには設定元のコントローラID17が付されているため、コントローラID17を利用して、受信パケットに対するアクション(処理内容)を特定することが好ましい。従って、経路決定者識別子231は、使用するアクション情報145を設定したコントローラID17を特定する情報であることが好ましい。経路決定者識別子231によって、使用するアクション情報145のみならず、アクション情報145を設定したPFC1を特定することができる。
In the present invention, a plurality of
又、経路決定者識別子231が付与されたフローエントリ(ルール144+アクション情報145)の使用回数が記録される回数情報232が、当該経路決定者識別子231又はルール144に対応付けられて設定されることが好ましい。回数情報232により、フローエントリの使用回数、すなわち、フローテーブル25に設定されたルール144に適合するパケットの受信回数や処理回数を確認することができる。
In addition, the
転送処理部21は、フローテーブル25に設定されたフローエントリ(ルール144+アクション情報145)に従った転送先に受信パケットを転送する。本発明では、受信パケットのヘッダ情報に適合するルール144に対して複数のアクション情報145がフローテーブル25に設定されている場合がある。このため、本発明による転送処理部21は、経路決定者識別子231によって特定されたアクション情報145に従って転送処理を行う。
The
転送処理部21は、受信パケットに対する処理(例えば転送処理)を実行すると、処理回数をカウントアップし、受信パケットに対応するフローエントリの回数情報232を更新する。
When the
フロー設定部22は、PFC1からのフローテーブル更新指示に応じて、PFC1から送信されるフローエントリ(ルール144+アクション情報145)をフローテーブル25に設定する。詳細には、フロー設定部22は、受信パケットに適合したフローエントリがフローテーブル25に設定されていない場合、すなわち、ファーストパケットを受信した場合、当該ファーストパケットをPFC1−1〜1−mに通知するとともに、フローテーブルの更新を要求する。又、PFC1−1〜1−mからのフローテーブルの更新指示を受けたフロー設定部22は、PFC1−1〜1−mからから送信されたフローエントリ(ルール144+アクション情報145)及びコントローラID17を自身のフローテーブル25に設定する。
The
PFS2には、PFC1−1〜1−mのそれぞれからフローエントリが設定されため、PFS2のフローテーブル25には、ファーストパケットに適合するフローエントリが複数設定される。すなわち、同じルール144に対して複数の異なるアクション情報145が設定されることとなる。本発明では、コントローラID17により、設定されたフローエントリ(アクション情報145)がどのPFC1によって設定されたかを確認することができる。
Since flow entries are set in PFS2 from PFC 1-1 to 1-m, a plurality of flow entries that match the first packet are set in the flow table 25 of PFS2. That is, a plurality of
本発明による経路決定者設定部23は、ファーストパケットを受信した場合と、それ以外のパケットデータ(フローテーブル25に設定されているフローエントリに適合するパケットデータ)を受信した場合とで、その動作が異なる。すなわち、PFS2は、ファーストパケットを受信してからファーストパケットを次のノード(例えばPFS2)に転送するまでの間は、経路決定者選択モードとして動作し、その他の期間は通常モードとして動作する。
The route
先ず、経路決定者選択モードにおける経路決定者設定部23の動作を説明する。経路決定者設定部23は、ファーストパケットを通知(フローテーブル更新要求)した複数のPFC1−1〜1−mのうち、最初にフローテーブルの更新を自身に指示したPFC1を、経路決定者として指定する。この際、経路決定者設定部23は、経路決定者として指定したPFC1のコントローラID17に経路決定者識別子231を設定する。これにより、ルール144に適合するパケットデータに対するアクション情報145(処理方法)を経路決定者識別子231によって特定することができる。経路決定者設定部23は、経路決定者識別子231を設定したコントローラID17のPFC1に対し、経路決定者として指定する情報、及び経路決定者を設定したルール144を送信する。又、経路決定者の指定後、フロー設定部22は、PFC1からのフローテーブルの更新指示を無視(拒否)することが好ましい。
First, the operation of the route
次に、通常モードにおける経路決定者設定部23の動作を説明する。経路決定者設定部23は、受信パケットに含まれる経理決定者情報18と一致するコントローラID17に経路決定者識別子231を設定する。詳細には、経路決定者設定部23は、フローテーブル25に設定されたルール144に適合するパケットを受信した場合、当該パケットの受信回数(転送回数)を回数情報232で確認する。この際、ルール144に適合するパケットの受信が初回である場合、経路決定者設定部23は、受信パケットから抽出した経路決定者情報18に一致するコントローラIDが付加されたフローエントリ(アクション情報145)に、経路決定者識別子231を設定する。又、経路決定者の指定後(経路決定者識別子231の設定後)、フロー設定部22は、PFC1によって設定された他のフローエントリを削除することが好ましい。一方、受信回数が2回目以降である場合、経路決定者設定部23は、自身のフローテーブル25を参照し、経路決定者識別子231が付されたフローエントリ(アクション情報145)に従って、受信パケットの処理(例えば転送処理)を行う。
Next, the operation of the route
パケット修正部24は、ファーストパケットを受信したPFS2において動作し、図10に示すように、ファーストパケット105に経路決定者情報18を追加して新たなパケットデータ90(以下、経路決定者情報付パケット90と称す)を作成する。転送処理部21は、ファーストパケットを送信する際、パケット修正部24によって生成された経路決定者情報付パケット90を転送する。
The packet modification unit 24 operates in the
転送処理部21によるファーストパケットの転送処理は、新しくフローエントリ(ルール144+アクション145)が設定され、経路決定者識別子231が設定されたことをトリガとして実施されることが好ましい。この際、転送処理部21は、パケット修正部24によって生成された経路決定者付パケット90を転送する。
It is preferable that the transfer process of the first packet by the
以上のように、本発明によるコンピュータシステムでは、複数のPFC3−1〜3−iによってフロー(パケット)を転送するための通信経路が構築されるため、PFC3−1〜3−iのいずれかに障害が発生してもパケット転送が可能となる。又、フローエントリ(ルール144+アクション情報145)には、PFC3毎に固有のコントローラID17が付与されている。このため、同じルール144に対して複数のアクション情報145が設定されていても、コントローラID17を使用決定者として指定することで、使用するアクション情報145を特定することができる。すなわち、複数のPFC3によってフローエントリが設定されてもPFS2が使用するフローエントリは常に1つとなるため、PFS2は、誤動作せずにパケットを転送することができる。
As described above, in the computer system according to the present invention, a communication path for transferring a flow (packet) is constructed by a plurality of PFCs 3-1 to 3-i. Packet transfer is possible even if a failure occurs. In addition, a
又、本発明では、フローテーブルの更新が、宛先ホスト側のPFS2から送信元ホスト側のPFS2(ファーストパケットを受信したPFS2)に向かって順に行われる。このため、ファーストパケットを通知したPFS2のフローテーブル25が更新された時点で、送信元のホスト3から宛先のホスト3までの通信経路上の全てのPFS2のフローテーブル25が更新されたことになる。すなわち、ファーストパケットを通知したPFS2のフローテーブル25を最初に更新したPFC1は、複数のPFC1のうち、通信経路上の全てのPFS2のフローテーブル25を更新した最初のPFC1となる。 In the present invention, the flow table is updated in order from PFS2 on the destination host side to PFS2 on the source host side (PFS2 that received the first packet). For this reason, when the PFS2 flow table 25 that has notified the first packet is updated, all the PFS2 flow tables 25 on the communication path from the transmission source host 3 to the destination host 3 are updated. . That is, the PFC1 that first updated the PFS2 flow table 25 that has notified the first packet is the first PFC1 that has updated all the PFS2 flow tables 25 on the communication path among the plurality of PFC1s.
(通信経路の構築及びパケット転送動作)
図11A、Bから図13を参照して、本発明によるコンピュータシステムにおける通信経路の構築動作の詳細を説明する。以下では、ホスト3−1からホスト3−iに対してパケットデータを送信し、それぞれの間の通信経路を構築する動作について説明する。又、ここでは、PFS2−1がホスト3−1からファーストパケットを受信するものとする。更に、PFC1−1のコントローラID17として“1011”が設定され、PFC1−2のコントローラID17として“1012”が設定され、以下同様に、PFC1−mのコントローラID17として“101m”が設定されるものとする。
(Construction of communication path and packet transfer operation)
With reference to FIGS. 11A and 11B to FIG. 13, the details of the operation of establishing a communication path in the computer system according to the present invention will be described. Hereinafter, an operation of transmitting packet data from the host 3-1 to the host 3-i and establishing a communication path between them will be described. Here, it is assumed that the PFS 2-1 receives the first packet from the host 3-1. Further, “1011” is set as the
図11A、Bは、本発明によるコンピュータシステムの実施の形態における通信経路の構築処理(フローテーブル更新処理)及びパケット転送処理の動作を示すシーケンス図である。図11を参照して、ホスト3−1からホスト3−i宛のパケットデータが送信され、ホスト3−1側で最も近いPFS2−1によって受信される(ステップS101)。 FIGS. 11A and 11B are sequence diagrams showing operations of communication path construction processing (flow table update processing) and packet transfer processing in the embodiment of the computer system according to the present invention. Referring to FIG. 11, packet data addressed to host 3-i is transmitted from host 3-1 and received by the nearest PFS 2-1 on the host 3-1 side (step S101).
PFS2−1はホスト3−1から受け取ったパケット内にあるヘッダ情報(送信先情報)を参照し、PFS2−1内部で保持しているフローテーブル25から該当エントリを探す(ステップS102)。ここで、ヘッダ情報に対応するフローエントリ(ルール144)がある場合、当該エントリで規定されたアクション情報145に基づいた転送先のノードに受信パケットを転送する(ステップS102No、S119)。
The PFS 2-1 refers to the header information (transmission destination information) in the packet received from the host 3-1, and searches for the corresponding entry from the flow table 25 held in the PFS 2-1 (step S102). If there is a flow entry (rule 144) corresponding to the header information, the received packet is transferred to the transfer destination node based on the
一方、ヘッダ情報に対応するフローエントリがフローテーブル25にない場合、PFS2−1はファーストパケットを受信したと判定し、ファーストパケットの受信をPFC1−1〜1−mのそれぞれに通知する(ステップS102Yes、S103、S104)。この際、PFS2−1は、フローテーブルの更新要求とともにファーストパケット(又はヘッダ情報)をPFC1−1〜1−mに送信する。以下、PFS2−1を要求元PFS2−1と称して説明する。 On the other hand, if there is no flow entry corresponding to the header information in the flow table 25, the PFS 2-1 determines that the first packet has been received, and notifies each of the PFCs 1-1 to 1-m that the first packet has been received (step S102 Yes). , S103, S104). At this time, the PFS 2-1 transmits a first packet (or header information) to the PFCs 1-1 to 1-m together with a flow table update request. Hereinafter, the PFS2-1 will be described as the request source PFS2-1.
ファーストパケットの受信通知を受け付けたPFC1−1〜1−mのそれぞれは、当該フロー(パケット)に対する通信経路の算出、フローエントリの生成、及びPFS2に対するフローエントリの設定(フローテーブル25の更新)を行う(ステップS105〜S112)。詳細には、PFS2−1からファーストパケットを受け取ったPFC1−1は、パケット内に含まれている送信元ホストや宛先ホストのMACアドレスやIPアドレスなど、OpenFlowとして規定されている情報を元に経路を決定し、当該経路上のPFS2に設定するフローエントリを生成する(ステップS105)。
Each of the PFCs 1-1 to 1-m that has received the reception notification of the first packet performs calculation of a communication path for the flow (packet), generation of a flow entry, and setting of a flow entry for the PFS2 (update of the flow table 25). It performs (steps S105-S112). More specifically, the PFC 1-1 that has received the first packet from the PFS 2-1 is routed based on information defined as OpenFlow, such as the MAC address and IP address of the source host and destination host included in the packet. And a flow entry to be set in the
PFC1−1は、生成したフローエントリにPFC1−1のコントローラID17“1011”を付与して、宛先ホスト側のPFS2−nから順にフローテーブル25の更新を行う(ステップS106〜S109)。詳細には、PFC1−1は、先ず、宛先のホスト3−iに最も近いPFS2−nに対してPFC1−1のコントローラID17“1011”を付与したフローエントリを送信する(ステップS106)。PFS2−nは、PFC1−1からのフローテーブルの更新指示に応じて、送信されたフローエントリを設定する(ステップS107)。同様に、PFC1−1は、算出した経路上を送信元側に方向に遡り、1つ前のPFS2に対して順にフローテーブルを更新し、最後に送信元のホスト3−1に最も近い要求元PFS2−1フローテーブルを更新する(ステップS108、S109)。
The PFC 1-1 assigns the
フローエントリの更新処理は、他のPFC1−2〜1−mも同様に行う。例えば、PFC1−mは、生成したフローエントリにPFC1−mのコントローラID17“101m”を付与して、宛先ホスト側のPFS2−nから順にフローテーブル25の更新を行う(ステップS110〜S112)。又、PFC1−mは、算出した経路上を送信元側に方向に遡り、1つ前のPFS2に対して順にフローテーブルを更新し、最後に送信元のホスト3−1に最も近いPFS2−1フローテーブルを更新する。
The flow entry update process is similarly performed for the other PFCs 1-2 to 1-m. For example, the PFC 1-m assigns the
PFC1−1〜1−mによるPFS2に対するフローテーブルの更新処理は、それぞれ同期することなく独立的に実施される。このため、フローテーブルの更新順序は、図11A、Bに示す順とは限らない。又、ファーストパケットの受信通知を受け取るタイミングや経路計算開始時のタイミングの違いから、ネットワーク上の機器の状態が変化している可能性があり、必ずしも一致しているとは限らない。このため、PFC1−1〜1−mのそれぞれが算出した通信経路や、フローエントリの設定対象となるPFS2は異なる場合がある。
The process of updating the flow table for the
PFC1−1〜1−mによるフローテーブルの更新処理により、PFS2には、1つのルールに対して複数(最大m個)のアクション情報145が設定される。ただし、それぞれのアクション情報145には、設定元のPFC1に対応するコントローラID17が対応付けられて記録される。
By the flow table update process by the PFC 1-1 to 1-m, a plurality of (maximum m)
ここで、PFC1−1〜1−mのいずれかによって要求元PFS2−1に対してフローエントリの設定指示(フローテーブルの更新指示)が出されると、要求元PFS2−1は、経路決定者を設定する(ステップS113)。ここでは、PFC1−1が最初に要求元PFS2−1のフローテーブル25を更新し、経路決定者として設定されるものとする。要求元PFS2−1は、PFC1−1によって設定されたフローエントリ(ルール144+アクション情報145)に経路決定者識別子231を対応付けて設定する。又、これ以降、要求元PFS2−1において、経路決定者として指定しないPFC1によるフローテーブルの更新指示は無視(拒否)される。
When a flow entry setting instruction (flow table update instruction) is issued to the request source PFS 2-1 by any of the PFCs 1-1 to 1-m, the request source PFS 2-1 determines the route determiner. Setting is made (step S113). Here, it is assumed that the PFC 1-1 first updates the flow table 25 of the request source PFS 2-1 and is set as a route determiner. The request source PFS 2-1 sets the
要求元PFS2−1は、経路決定者識別子231を付与したフローエントリのコントローラID17に対応するPFC1を経路決定者に指定する(ステップS114)。例えば、PFC1−1を経路決定者に指定を指定する場合、PFC1−1に対して経路決定者を指定する情報(例えば経路決定者識別子231)とフローエントリを特定する情報(例えばルール144)を送信する。PFC1−1は、受信したルール144に対して、経路決定者を指定する情報(例えば経路決定者識別子231)を対応付けてフローテーブル14を更新する(ステップS115)。これにより、PFC1−1は、自身が設定し、制御及び管理可能なフロー及びその通信経路を確認することが可能となる。すなわち、PFC1−1は、自身の構築した通信経路を利用したフローの一元制御及び管理が可能となる。
The request source PFS2-1 designates PFC1 corresponding to the
要求元PFS2−1は、ステップS114における経路決定者の指定の後、又はこれと同時的に他のPFC1(ここではPFC1−2〜1−m)に対して、経路決定者を通知する(ステップS116)。要求元PFS2−1は、PFC1−2〜1−mに対して経路決定者ではないことを示す情報とフローエントリを特定する情報(例えばルール144)を送信する。経路決定者として選択されなかったPFC1−2〜1−mは、自身のフローテーブル14から、PFS2−1から通知されたルール144を含むフローエントリを削除する(ステップS117)。又、経路決定者として選択されなかったPFC1−2〜1−mは、フローエントリの生成途中である場合、PFS2−1から通知されたルール144を含むフローエントリの生成を停止することが好ましい。このように、使用しないフローエントリの削除や、使用しないフローエントリの生成を中止することで、PFC1における記憶領域の無駄や処理負荷の増大を防止することができる。ただし、ステップS116及びS117の処理は省略してもよい。
The request source PFS 2-1 notifies the route determiner to the other PFC 1 (here, PFC 1-2 to 1-m) after the designation of the route determiner in step S114 or simultaneously (step S114). S116). The request source PFS 2-1 transmits to the PFC 1-2 to 1-m information indicating that the requester PFS 2-1 is not a route determiner and information specifying the flow entry (for example, rule 144). The PFCs 1-2 to 1-m not selected as the route determiner delete the flow entry including the
要求元PFS2−1は、経路決定者を設定(指定)すると、ファーストパケット105に経路決定者情報18を追加して経路決定者情報付パケット90を生成及び送信する(ステップS118)。この際、要求元PFS2−1は、経路決定者であるPFC1−1のコントローラID“1011”を経路決定者情報18としてファーストパケット105に追加して経路決定者情報付パケット90を生成する。そして、コントローラID“1011”が付されたアクション情報145に従った転送先に当該パケット90を転送する。
When the request source PFS 2-1 sets (designates) the route determiner, the request source PFS 2-1 adds the
経路決定者情報付パケット90を受信したPFS2は、経路決定者情報付パケット90のヘッダ情報に適合するルール144に対応する複数のアクション情報145から、経路決定者情報付パケット90内の経路決定者情報18と一致するコントローラID17が付加されたアクション情報145を抽出する。そしてPFS2は、抽出したアクション情報145に従った処理(ここでは転送処理)を行う。これにより、ファーストパケット105は、経路決定者(PFC1−1)によって設定された通信経路を経由して宛先のホスト3−iに送信される。
The
経路決定者情報付パケット90を転送したPFS2は、経路決定者情報付パケット90に適合するルール144に対応するアクション情報145のうち、転送に利用しないアクション情報145を自身のフローテーブル25から削除することが好ましい。この場合、PFS2は、経路決定者によって設定されたフローエントリのみを使用できるため、要求元PFS2−1は、ファーストパケット以外のパケットに経路決定者情報18を含めて転送する必要はない。
The
又、PFS2は、ルール144に適合するパケットの処理回数をカウントアップし、回数情報232を更新する。
In addition, the
以降、PFS2は、受信パケットに適合するフローエントリに従ってパケットデータを転送する(ステップS119)。これにより、ホスト3−1からホスト3−iに対して送信されるパケットデータは、経路決定者(PFC1−1)によって各PFS2に設定されたアクション情報145に従って転送される。すなわち、ホスト3−1からホスト3−iに対して送信されるパケットデータは、経路決定者(PFC1−1)によって構築された通信経路を経由して宛先のホスト3−iに送信されることとなる。
Thereafter, the
一方、何らかの障害により、経路決定者付パケット90内の経路決定者情報18に一致するコントローラID17が、PFS2のフローテーブル25に設定されていないことがある。このような問題を解決する転送処理方法を、図12を参照して説明する。図12は、本発明によるPFS2におけるパケット転送動作の一例を示すフロー図である。
On the other hand, the
図12を参照して、PFS2は、受信パケットに適合するフローエントリ(ルール144+アクション情報145)の適用回数が、初回(1回目)か2日回目以降かを、回数情報232を参照して判定する(ステップS201)。受信パケットに適合するフローエントリ(ルール144+アクション情報145)に対応する回数情報232が“0”を示す場合、当該フローエントリの適用が初回であると判定される(ステップS201Yes)。すなわち、受信パケットがファーストパケット105を含む経路決定者情報付パケット90であると判定される。この場合、PFS2は、受信パケットに含まれる経路決定者情報18と、当該フローエントリに設定されたコントローラID17とを比較する(ステップS202)。
Referring to FIG. 12,
ネットワークやPFS2に何らかの障害が発生した場合、受信パケット内の経路決定者情報18と一致するコントローラID17がフローテーブル25に設定されていないことがある。この場合、PFS2は、受信パケットに付加されている経路決定者情報18と同じコントローラID17が付与されたPFC1に対して、受信パケットを転送する(ステップS202No、S203)。PFC1は、PFS2から受け取ったパケットデータのヘッダ情報により送信元及び宛先のホスト3を特定し、通信経路の算出及びPFS2に設定するフローエントリ(ルール144+アクション情報145)の生成を行う。そして、PFC1は、通信経路上のPFS2に対してフローエントリの設定指示(フローテーブルの更新指示)を発行する(ステップS204)。受信パケットが通知されたPFC1は、ファーストパケットを通知したPFS2によって経路決定者に設定されている。この場合、障害が発生せず正常に動作している可能性が高いため、再度のフローテーブルの更新処理も失敗せずに実行され得る。
When a failure occurs in the network or the
以降、新たに設定されたフローエントリ(アクション情報145)に従って、受信パケットの転送処理を行う(ステップS205)。その後、該当フローエントリに対応する処理回数をカウントアップして回数情報232を更新する(ステップS206)。
Thereafter, the received packet is transferred in accordance with the newly set flow entry (action information 145) (step S205). Thereafter, the number of processes corresponding to the flow entry is counted up and the
一方、受信パケット内の経路決定者情報18と一致するコントローラID17がフローテーブル25に設定されている場合、当該コントローラID17に対応するアクション情報145に従って、受信パケットの転送処理が行われる(ステップS202Yes、S205)。その後、該当フローエントリに対応する処理回数をカウントアップして回数情報232を更新する(ステップS206)。この際、PFS2は、経路決定者情報18と一致しないコントローラID17が付されたアクション情報145をフローテーブル25から削除する、あるいは、経路決定者識別子231をアクション情報145に対応付けて、以後使用するアクション情報145を特定する。
On the other hand, when the
ただし、受信パケットに付加されている経路決定者情報18と、フローテーブル25のエントリに追加されているコントローラID17が異なることはごく稀であり、何らかの障害が発生した場合に限られる。
However, it is rare that the
ステップS201において、 受信パケットに適合するフローエントリ(ルール144+アクション情報145)に対応する回数情報232が“0”以外を示す場合、当該フローエントリの適用が2回目以降であると判定される(ステップS201No)。すなわち、当該PFS2は、既にファーストパケット105を含む経路決定者情報付パケット90を受信しており、使用するフローエントリ(アクション情報145)を決定している。この場合、PFS2は、受信パケットに適合するルール144に対応するアクション情報145に従って、受信パケットの転送処理を行う(ステップS205)。例えば、経路決定者付パケット90に応じたアクション情報145の削除により、使用するアクション情報145のみがフローテーブルに記録されている場合、2回目以降の受信パケットは、当該パケットに対して一意に適合するフローエントリ(ルール144+アクション情報145)に従って処理(例えば転送処理)される。あるいは、経路決定者付パケット90に応じた経路決定者識別子231の付与により、使用するアクション情報145が特定されている場合、2回目以降の受信パケットは、当該パケットに適合するルール144に対応し、経路決定者識別子231が付されたアクション情報145に従って処理される。又、該当フローエントリに対応する処理回数をカウントアップして回数情報232を更新する(ステップS206)。
In step S201, when the
以上のように、要求元PFSにおいてパケット内に経路決定者情報18を付加し、通信経路上のPFS2において、経路決定者情報18とフローテーブル25内のコントローラIDとを比較することで、経路の整合性を判定することができる。これにより、何らかの障害により、通信経路上のPFS2にパケットに適合するフローエントリが設定されていない場合でも、再度フローエントリを設定することが可能となる。
As described above, the
(耐障害性)
図13を参照して、本発明による効果について説明する。図13に示すように、ホスト3−1からホスト3−2に対してパケットデータを送信する場合、要求元PFS2−1からのファーストパケットの通知に応じて、3つのPFC1−1〜1−3によって3つの通信経路40、50、60が計算される。尚、通信経路40は、PFS2−1、2−2、2−3、2−5を経由する経路であり、通信経路50は、PFS2−1、2−4、2−5を経由する経路であり、通信経路60は、PFS2−1、2−6、2−5を経由する経路である。
(Fault tolerance)
The effects of the present invention will be described with reference to FIG. As shown in FIG. 13, when packet data is transmitted from the host 3-1 to the host 3-2, three PFCs 1-1 to 1-3 are responded to the notification of the first packet from the request source PFS 2-1. The three
PFC1−1は、通信経路40上のPFS2−5から、PFS2−3、PFS2−2、要求元PFS2−1の順にフローテーブルを更新し、PFC1−2は、通信経路50上のPFS2−5から、PFS2−4、要求元PFS2−1の順にフローテーブルを更新し、PFC1−3は、通信経路60上のPFS2−5から、PFS2−6、要求元PFS2−1の順にフローテーブルを更新する。これらの更新処理は、上述のように独立的に行われる。要求元PFS2−1は、先に自身のフローテーブル25を更新したPFC1を経路決定者に指定し、経路決定者によって構築された通信経路を利用してホスト3−1〜ホスト3−2間の通信を行う。
The PFC 1-1 updates the flow table in the order of PFS 2-3, PFS 2-2, and request source PFS 2-1 from the PFS 2-5 on the
ここで、PFS2に設定されるフローエントリはPFC1を特定するためのコントローラID17“1011”が対応付けられているため、経路決定者をコントローラIDで指定することで、PFS2やPFC1は使用するフローエントリ(すなわち通信経路)を特定することができる。例えば、要求元PFS2−1において経路者決定者が指定するまでの間に、PFS2−5に対してPFC1−1〜1−3によるフローテーブルの更新指示がなされた場合、PFS2−5には、コントローラID17が“1011”、“1012、“1013”が付与された3つのアクション情報145が同一のルール144に対応付けられて設定される。このような場合でも、要求元PFS2−1による経路決定者情報付パケット90が通知されることで、PFS2−5は、コントローラID17“1011”に対応するフローエントリのみを残し、他のエントリを破棄することができる。このように、PFS2やPFC1に対する経路決定者の通知は、要求元PFS2−1が一元的に行うため、PFC1は、他のPFC1と通信することなく独立的なPFS2へのフローテーブルの更新処理のみで、矛盾なく通信経路を構築することができる。
Here, since the flow ID set in the
又、本発明では、経路決定者(使用するフローエントリ)を指定するPFS2を、フローエントリを設定する最後のPFS2としている。このため、要求元PFS2−1にフローエントリが設定された時点で、通信経路上の全てのPFS2にフローエントリが設定されていることとなる。
In the present invention, the PFS2 that designates the route determiner (the flow entry to be used) is the last PFS2 that sets the flow entry. For this reason, when the flow entry is set in the request source PFS 2-1, the flow entries are set in all the
以上のように、本発明によれば、複数のPFC1によって、パケットに対する処理を規定したフローエントリを設定し、先に構築された通信経路を利用してパケット転送を行っている。このため、複数のPFC1のうちいずれかに障害が発生しても他のPFC1によってフローエントリの設定(通信経路の構築)が可能となり耐障害性が向上する。又、構築された通信経路は、1つのPFC1によって設定されたアクション情報145に従うため、オープンフロー技術で提案されたフローの一元制御及び管理が可能となる。
As described above, according to the present invention, a flow entry that defines processing for a packet is set by a plurality of
又、複数のPFC1のそれぞれは、独自にフローテーブルの更新指示を発行するため、コントローラ間で同期を取る必要がない。このため、コントロール間で同期を取るための待ち時間を必要としないため、経路構築までの時間を短縮することも可能となる。すなわち、本発明によれば、オープンフロー技術を利用したコンピュータシステムにおいて通信経路構築の時間を増加させることなく耐障害性を上げることが可能となる。
In addition, since each of the plurality of
以上、本発明の実施の形態を詳述してきたが、具体的な構成は上記実施の形態に限られるものではなく、本発明の要旨を逸脱しない範囲の変更があっても本発明に含まれる。例えば、フローテーブルの更新制御は、通信経路の構築(転送先の設定)だけでなく、フローの転送停止や終了(破棄)といった他の制御に対して行われても良い。これにより、複数のコントローラからの指示を矛盾することなく実行することが可能となり、耐障害性が更に向上する。 The embodiment of the present invention has been described in detail above, but the specific configuration is not limited to the above-described embodiment, and changes within a scope not departing from the gist of the present invention are included in the present invention. . For example, the flow table update control may be performed not only for communication path construction (transfer destination setting) but also for other control such as flow transfer stop or termination (discard). Thereby, it is possible to execute instructions from a plurality of controllers without contradiction, and the fault tolerance is further improved.
又、上述の実施の形態では、要求元PFS2によって指定された経路決定者が、ファーストパケットを利用して他のPFS2に通知されたが、これに限らず、PFC1−1〜1−mを利用して他のPFS2に通知されても良い。例えば、経路決定者としてPFC1−1が指定された場合、PFC1−1は、要求元PFS2からの経路決定者の通知に応じて、自身が設定したPFS2に経路決定者情報18を通知する。PFS2は、経路決定者情報18に一致するコントローラID17が付加されたアクション情報145のみを残し他を削除する。これにより、要求元PFS2から転送されたパケットは、PFC1−1によって構築された通信経路を介して宛先ホストに送信される。ただし、この場合、通信経路上のPFS2に対するフローエントリの削除や、使用するフローエントリの設定が完了するまで、ファーストパケットを転送できないため、上述の実施の形態に比べてパケット転送までの時間が長大化してしまう。
In the above-described embodiment, the route determiner designated by the request source PFS2 is notified to the other PFS2 using the first packet. However, the present invention is not limited to this, and the PFC 1-1 to 1-m are used. Then,
又、本実施の形態では、最初に要求元PFS2にフローエントリを設定したPFC1を経路決定者として指定したが、これに限らず、2番目や3番目に設定したPFC1を経路決定者として指定しても構わない。又、算出した通信経路上の全てのPFS2にフローエントリを設定していれば、所定の条件を満たすPFC1を優先的に経路決定者として指定しても構わない。
In the present embodiment, the PFC1 in which the flow entry is first set in the request source PFS2 is specified as the route determiner. However, the present invention is not limited to this, and the second or third set PFC1 is specified as the route determiner. It doesn't matter. Further, as long as flow entries are set for all the
上記の実施の形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限らない。 A part or all of the above embodiment can be described as in the following supplementary notes, but is not limited thereto.
(付記1)
それぞれが、通信経路を算出し、前記通信経路上のスイッチに対して、フローエントリの設定を指示する複数のコントローラと、
前記複数のコントローラの1つを経路決定者として指定し、前記経路決定者によって設定されたフローエントリに従って、受信パケットの中継処理を行う複数のスイッチと
を具備する
コンピュータシステム。
(Appendix 1)
A plurality of controllers each for calculating a communication path and instructing a switch on the communication path to set a flow entry;
A computer system comprising: a plurality of switches that designate one of the plurality of controllers as a route determiner, and that performs a relay process of a received packet in accordance with a flow entry set by the route determiner.
(付記2)
付記1に記載のコンピュータシステムにおいて、
前記通信経路上の全てのスイッチにフローエントリを設定したコントローラが、前記経路決定者として設定される
コンピュータシステム。
(Appendix 2)
In the computer system according to
A computer system in which a controller that sets flow entries in all switches on the communication path is set as the path determiner.
(付記3)
付記1又は2に記載のコンピュータシステムにおいて、
前記複数のコントローラのそれぞれは、自身を特定するコントローラIDを付加したフローエントリを前記通信経路上のスイッチに設定し、
前記複数のスイッチは、前記コントローラIDによって、前記経路決定者を特定する
コンピュータシステム。
(Appendix 3)
In the computer system according to
Each of the plurality of controllers sets a flow entry to which a controller ID for identifying itself is added to a switch on the communication path,
The plurality of switches is a computer system that identifies the route determiner based on the controller ID.
(付記4)
付記3に記載のコンピュータシステムにおいて、
前記複数のスイッチは、
前記経路決定者を指定し、前記経路決定者を特定する経路決定者情報を受信パケットに含めて他のスイッチに転送する第1スイッチと、
前記経路決定者情報に一致するコントローラIDが付加されたフローエントリに従って受信パケットの中継処理を行う第2スイッチと
を備える
コンピュータシステム。
(Appendix 4)
In the computer system according to attachment 3,
The plurality of switches are:
A first switch that designates the route determiner, includes route determiner information that identifies the route determiner in a received packet, and forwards the received information to another switch;
A computer system comprising: a second switch that relays received packets in accordance with a flow entry to which a controller ID that matches the route determiner information is added.
(付記5)
付記4に記載のコンピュータシステムにおいて、
前記第2スイッチは、前記経路決定者情報と一致するコントローラIDが付加されたフローエントリを保持しない場合、前記経路決定情報が示すコントローラに対し、受信パケットに対するフローエントリの設定を要求する
コンピュータシステム。
(Appendix 5)
In the computer system according to attachment 4,
When the second switch does not hold a flow entry to which a controller ID that matches the route determination information is added, the second switch requests the controller indicated by the route determination information to set a flow entry for a received packet.
(付記6)
付記4又は5に記載のコンピュータシステムにおいて、
前記複数のコントローラのそれぞれは、前記通信経路上のスイッチに対してフローエントリを設定する際、前記通信経路上のスイッチの中で前記第1スイッチを最後に設定し、
前記第1スイッチは、自身が保持するフローテーブルに対し、前記複数のコントローラの中で最初にフローエントリを設定したコントローラを前記経路決定者に指定する
コンピュータシステム。
(Appendix 6)
In the computer system according to appendix 4 or 5,
Each of the plurality of controllers sets the first switch last among the switches on the communication path when setting a flow entry for the switch on the communication path,
The computer system, wherein the first switch designates, to the route determiner, a controller that first sets a flow entry among the plurality of controllers with respect to a flow table held by the first switch.
(付記7)
付記4から6のいずれか1項に記載のコンピュータシステムにおいて、
前記第1スイッチは、受信パケットに適合するフローエントリがない場合、フローエントリの設定を前記複数のコントローラに要求し、
前記複数のコントローラのそれぞれは、前記要求に応じて通信経路の算出及びフローエントリの設定を行う
コンピュータシステム。
(Appendix 7)
In the computer system according to any one of appendices 4 to 6,
When there is no flow entry that matches the received packet, the first switch requests the plurality of controllers to set a flow entry;
Each of the plurality of controllers calculates a communication path and sets a flow entry in response to the request.
(付記8)
付記1から7のいずれか1項に記載のコンピュータシステムで利用されるコントローラ。
(Appendix 8)
A controller used in the computer system according to any one of
(付記9)
付記1から7のいずれか1項に記載のコンピュータシステムで利用されるスイッチ。
(Appendix 9)
A switch used in the computer system according to any one of
(付記10)
複数のコントローラのそれぞれが、通信経路を算出し、前記通信経路上のスイッチに対して、フローエントリの設定を指示するステップと、
前記複数のコントローラの1つを経路決定者として指定するステップと、
複数のスイッチが、前記経路決定者によって設定されたフローエントリに従って、受信パケットの中継処理を行うステップと
を具備する
通信方法。
(Appendix 10)
Each of the plurality of controllers calculates a communication path, and instructs a switch on the communication path to set a flow entry;
Designating one of the plurality of controllers as a route determiner;
A plurality of switches performing a relay process of received packets in accordance with a flow entry set by the route determiner.
(付記11)
付記10に記載の通信方法において、
前記経路設定者として指定するステップでは、通信経路上の全てのスイッチにフローエントリを設定したコントローラが、前記経路決定者として設定される
通信方法。
(Appendix 11)
In the communication method according to attachment 10,
In the step of designating as the route setter, a controller that sets flow entries in all switches on the communication route is set as the route determiner.
(付記12)
付記10又は11に記載の通信方法において、
前記複数のコントローラのそれぞれが、自身を特定するコントローラIDを付加したフローエントリを前記通信経路上のスイッチに設定するステップと、
前記複数のスイッチが、前記コントローラIDによって、前記経路決定者を特定するステップと
を更に具備する
通信方法。
(Appendix 12)
In the communication method according to
Each of the plurality of controllers setting a flow entry to which a controller ID identifying itself is added to a switch on the communication path;
The plurality of switches further comprising a step of specifying the route determiner by the controller ID.
(付記13)
付記12に記載の通信方法において、
前記経路決定者として指定するステップは、
第1スイッチが、前記経路決定者を指定するステップと、
前記第1スイッチが、前記経路決定者を特定する経路決定者情報を受信パケットに含めて他のスイッチに転送するステップと
を備え、
前記中継処理を行うステップは、第2スイッチが、前記経路決定者情報に一致するコントローラIDが付加されたフローエントリに従って受信パケットの中継処理を行うステップを備える
通信方法。
(Appendix 13)
In the communication method according to
The step of designating as the route determiner includes
A first switch designating the route determiner;
The first switch includes a route determiner information for identifying the route determiner in a received packet and forwards the received packet to another switch;
The step of performing the relay process includes a step of the second switch performing a relay process of a received packet according to a flow entry to which a controller ID that matches the route determination information is added.
(付記14)
付記13に記載の通信方法において、
前記第2スイッチが、前記経路決定者情報と一致するコントローラIDが付加されたフローエントリを保持しない場合、前記経路決定情報が示すコントローラに対し、受信パケットに対するフローエントリの設定を要求するステップを更に具備する
通信方法。
(Appendix 14)
In the communication method according to
When the second switch does not hold the flow entry to which the controller ID that matches the route determination information is added, the step of requesting the controller indicated by the route determination information to set the flow entry for the received packet is further included. A communication method.
(付記15)
付記13又は14に記載の通信方法において、
前記複数のコントローラのそれぞれが、前記通信経路上のスイッチに対してフローエントリを設定する際、前記通信経路上のスイッチの中で前記第1スイッチを最後に設定し、
前記経路決定者として指定するステップは、前記第1スイッチが、自身が保持するフローテーブルに対し、前記複数のコントローラの中で最初にフローエントリを設定したコントローラを前記経路決定者に指定するステップを備える
通信方法。
(Appendix 15)
In the communication method according to
When each of the plurality of controllers sets a flow entry for a switch on the communication path, the first switch is set last among the switches on the communication path,
The step of designating as the route determiner includes the step of designating, to the route determiner, the first switch that sets the flow entry among the plurality of controllers with respect to the flow table held by the first switch. A communication method.
(付記16)
付記13から15のいずれか1項に記載の通信方法において、
前記第1スイッチが、受信パケットに適合するフローエントリがない場合、フローエントリの設定を前記複数のコントローラに要求するステップを更に具備し、
前記複数のコントローラのそれぞれは、前記要求に応じて通信経路の算出及びフローエントリの設定を行う
通信方法。
(Appendix 16)
In the communication method according to any one of
The first switch further requesting the plurality of controllers to set a flow entry when there is no flow entry matching the received packet;
Each of the plurality of controllers calculates a communication path and sets a flow entry in response to the request.
1、1−1〜1−m:プログラマブルフローコントローラ(PFC)
2、2−1〜2−n:複数のプログラマブルスイッチ(PFS)
3、3−1〜3−i:ホストコンピュータ(ホスト)
11:スイッチ制御部
12:フロー管理部
13:フロー生成部
14:フローテーブル
15:トポロジ情報
16:通信経路情報
17:コントローラID
18:決定者情報
20:スイッチ群
21:転送処理部
22:フロー設定部
23:経路決定者設定部
24:パケット修正部
25:フローテーブル
30:ホスト群
40:通信経路
50:通信経路
60:通信経路
90:経路決定者情報付パケット
105:ファーストパケット
141:フロー識別子
142:対象装置
143:経路情報
144:ルール
145:アクション情報
146:設定情報
147:経路決定者識別子
151:装置識別子
152:ポート数
153:ポート接続先情報
161:端点情報
162:通過スイッチ情報
163:付随情報
231:経路決定者識別子
232:回数情報
1, 1-1 to 1-m: Programmable flow controller (PFC)
2, 2-1 to 2-n: Multiple programmable switches (PFS)
3, 3-1 to 3-i: Host computer (host)
11: Switch control unit 12: Flow management unit 13: Flow generation unit 14: Flow table 15: Topology information 16: Communication path information 17: Controller ID
18: Determiner information 20: Switch group 21: Transfer processing unit 22: Flow setting unit 23: Route determination unit setting unit 24: Packet modification unit 25: Flow table 30: Host group 40: Communication route 50: Communication route 60: Communication Route 90: Packet with route determiner information 105: First packet 141: Flow identifier 142: Target device 143: Route information 144: Rule 145: Action information 146: Setting information 147: Route determiner identifier 151: Device identifier 152: Number of ports 153: Port connection destination information 161: End point information 162: Passing switch information 163: Accompanying information 231: Route determiner identifier 232: Number of times information
Claims (10)
前記複数のコントローラの1つを経路決定者として指定し、前記経路決定者によって設定されたフローエントリに従って、受信パケットの中継処理を行う複数のスイッチと
を具備する
コンピュータシステム。 A plurality of controllers each for calculating a communication path and instructing a switch on the communication path to set a flow entry;
A computer system comprising: a plurality of switches that designate one of the plurality of controllers as a route determiner, and that performs a relay process of a received packet in accordance with a flow entry set by the route determiner.
前記複数のコントローラのそれぞれは、自身を特定するコントローラIDを付加したフローエントリを前記通信経路上のスイッチに設定し、
前記複数のスイッチは、
前記経路決定者を指定し、前記経路決定者を特定する経路決定者情報を受信パケットに含めて他のスイッチに転送する第1スイッチと、
前記経路決定者情報に一致するコントローラIDが付加されたフローエントリに従って受信パケットの中継処理を行う第2スイッチと
を備える
コンピュータシステム。 The computer system of claim 1,
Each of the plurality of controllers sets a flow entry to which a controller ID for identifying itself is added to a switch on the communication path,
The plurality of switches are:
A first switch that designates the route determiner, includes route determiner information that identifies the route determiner in a received packet, and forwards the received information to another switch;
A computer system comprising: a second switch that relays received packets in accordance with a flow entry to which a controller ID that matches the route determiner information is added.
前記第2スイッチは、前記経路決定者情報と一致するコントローラIDが付加されたフローエントリを保持しない場合、前記経路決定情報が示すコントローラに対し、受信パケットに対するフローエントリの設定を要求する
コンピュータシステム。 The computer system according to claim 2, wherein
When the second switch does not hold a flow entry to which a controller ID that matches the route determination information is added, the second switch requests the controller indicated by the route determination information to set a flow entry for a received packet.
前記複数のコントローラのそれぞれは、前記通信経路上のスイッチに対してフローエントリを設定する際、前記通信経路上のスイッチの中で前記第1スイッチを最後に設定し、
前記第1スイッチは、自身が保持するフローテーブルに対し、前記複数のコントローラの中で最初にフローエントリを設定したコントローラを前記経路決定者に指定する
コンピュータシステム。 The computer system according to claim 2 or 3,
Each of the plurality of controllers sets the first switch last among the switches on the communication path when setting a flow entry for the switch on the communication path,
The computer system, wherein the first switch designates, to the route determiner, a controller that first sets a flow entry among the plurality of controllers with respect to a flow table held by the first switch.
前記複数のコントローラの1つを経路決定者として指定するステップと、
複数のスイッチが、前記経路決定者によって設定されたフローエントリに従って、受信パケットの中継処理を行うステップと
を具備する
通信方法。 Each of the plurality of controllers calculates a communication path, and instructs a switch on the communication path to set a flow entry;
Designating one of the plurality of controllers as a route determiner;
A plurality of switches performing a relay process of received packets in accordance with a flow entry set by the route determiner.
前記複数のコントローラのそれぞれが、自身を特定するコントローラIDを付加したフローエントリを前記通信経路上のスイッチに設定するステップを更に具備し、
前記経路決定者として指定するステップは、
第1スイッチが、前記経路決定者を指定するステップと、
前記第1スイッチが、前記経路決定者を特定する経路決定者情報を受信パケットに含めて他のスイッチに転送するステップと
を備え、
前記中継処理を行うステップは、第2スイッチが、前記経路決定者情報に一致するコントローラIDが付加されたフローエントリに従って受信パケットの中継処理を行うステップを備える
通信方法。 The communication method according to claim 7,
Each of the plurality of controllers further comprises a step of setting a flow entry to which a controller ID identifying itself is added to a switch on the communication path;
The step of designating as the route determiner includes
A first switch designating the route determiner;
The first switch includes a route determiner information for identifying the route determiner in a received packet and forwards the received packet to another switch;
The step of performing the relay process includes a step of the second switch performing a relay process of a received packet according to a flow entry to which a controller ID that matches the route determination information is added.
前記第2スイッチが、前記経路決定者情報と一致するコントローラIDが付加されたフローエントリを保持しない場合、前記経路決定情報が示すコントローラに対し、受信パケットに対するフローエントリの設定を要求するステップを更に具備する
通信方法。 The communication method according to claim 8, wherein
When the second switch does not hold the flow entry to which the controller ID that matches the route determination information is added, the step of requesting the controller indicated by the route determination information to set the flow entry for the received packet is further included. A communication method.
前記複数のコントローラのそれぞれが、前記通信経路上のスイッチに対してフローエントリを設定する際、前記通信経路上のスイッチの中で前記第1スイッチを最後に設定し、
前記経路決定者として指定するステップは、前記第1スイッチが、自身が保持するフローテーブルに対し、前記複数のコントローラの中で最初にフローエントリを設定したコントローラを前記経路決定者に指定するステップを備える
通信方法。 The communication method according to claim 8 or 9,
When each of the plurality of controllers sets a flow entry for a switch on the communication path, the first switch is set last among the switches on the communication path,
The step of designating as the route determiner includes the step of designating, to the route determiner, the first switch that sets the flow entry among the plurality of controllers with respect to the flow table held by the first switch. A communication method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010022539A JP5488979B2 (en) | 2010-02-03 | 2010-02-03 | Computer system, controller, switch, and communication method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010022539A JP5488979B2 (en) | 2010-02-03 | 2010-02-03 | Computer system, controller, switch, and communication method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011160363A true JP2011160363A (en) | 2011-08-18 |
JP5488979B2 JP5488979B2 (en) | 2014-05-14 |
Family
ID=44591903
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010022539A Expired - Fee Related JP5488979B2 (en) | 2010-02-03 | 2010-02-03 | Computer system, controller, switch, and communication method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5488979B2 (en) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013118690A1 (en) | 2012-02-10 | 2013-08-15 | 日本電気株式会社 | Computer system and method for visualizing virtual network |
WO2013118687A1 (en) | 2012-02-10 | 2013-08-15 | 日本電気株式会社 | Computer system and method for visualizing virtual network |
WO2013128916A1 (en) * | 2012-02-29 | 2013-09-06 | Nec Corporation | Communication apparatus, communication method, communication system and program |
WO2013128915A1 (en) * | 2012-02-29 | 2013-09-06 | Nec Corporation | Communication apparatus, communication method, communication system and program |
WO2013133227A1 (en) * | 2012-03-05 | 2013-09-12 | 日本電気株式会社 | Network system, switch, and network building method |
WO2013161172A1 (en) | 2012-04-27 | 2013-10-31 | 日本電気株式会社 | Communication system, and path control method |
JP2014511085A (en) * | 2012-03-14 | 2014-05-01 | ▲ホア▼▲ウェイ▼技術有限公司 | Method, switch, server, and system for sending a connection establishment request |
JP5503762B1 (en) * | 2013-02-19 | 2014-05-28 | 三菱電機インフォメーションシステムズ株式会社 | Open flow network system |
WO2015025845A1 (en) * | 2013-08-20 | 2015-02-26 | 日本電気株式会社 | Communication system, switch, controller, ancillary data management device, data transfer method, and program |
US9301232B2 (en) | 2014-03-04 | 2016-03-29 | Kddi Corporation | Management apparatus of controller for communication network |
US9628324B2 (en) | 2014-04-14 | 2017-04-18 | Fujitsu Limited | Openflow switch and failure recovery method in openflow network |
US9699090B2 (en) | 2013-10-22 | 2017-07-04 | Fujitsu Limited | Transfer device, control device, and transfer method |
US9853857B2 (en) | 2015-04-20 | 2017-12-26 | Fujitsu Limited | System, switch device and method of controlling a plurality of switch devices |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011065268A1 (en) * | 2009-11-26 | 2011-06-03 | 日本電気株式会社 | Load distribution system, load distribution method, and program |
WO2011083780A1 (en) * | 2010-01-05 | 2011-07-14 | 日本電気株式会社 | Communication system, control apparatus, processing rule setting method, packet transmitting method and program |
-
2010
- 2010-02-03 JP JP2010022539A patent/JP5488979B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011065268A1 (en) * | 2009-11-26 | 2011-06-03 | 日本電気株式会社 | Load distribution system, load distribution method, and program |
WO2011083780A1 (en) * | 2010-01-05 | 2011-07-14 | 日本電気株式会社 | Communication system, control apparatus, processing rule setting method, packet transmitting method and program |
Non-Patent Citations (2)
Title |
---|
CSND200800778013; 久保田 浩: 'プログラマブル・フロースイッチ スイッチ部と制御部を分離し,新世代ネットワークに対応したフロースイッ' 日経NETWORK 第104号, 20081128, pp.80-81, 日経BP社 * |
JPN6013047962; 久保田 浩: 'プログラマブル・フロースイッチ スイッチ部と制御部を分離し,新世代ネットワークに対応したフロースイッ' 日経NETWORK 第104号, 20081128, pp.80-81, 日経BP社 * |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013118687A1 (en) | 2012-02-10 | 2013-08-15 | 日本電気株式会社 | Computer system and method for visualizing virtual network |
WO2013118690A1 (en) | 2012-02-10 | 2013-08-15 | 日本電気株式会社 | Computer system and method for visualizing virtual network |
US9425987B2 (en) | 2012-02-10 | 2016-08-23 | Nec Corporation | Computer system and visualization method of virtual network |
JP2015508944A (en) * | 2012-02-29 | 2015-03-23 | 日本電気株式会社 | COMMUNICATION DEVICE, COMMUNICATION METHOD, COMMUNICATION SYSTEM, AND PROGRAM |
WO2013128916A1 (en) * | 2012-02-29 | 2013-09-06 | Nec Corporation | Communication apparatus, communication method, communication system and program |
WO2013128915A1 (en) * | 2012-02-29 | 2013-09-06 | Nec Corporation | Communication apparatus, communication method, communication system and program |
US9866500B2 (en) | 2012-02-29 | 2018-01-09 | Nec Corporation | Communication apparatus, communication method, communication system and program |
JP2015512162A (en) * | 2012-02-29 | 2015-04-23 | 日本電気株式会社 | COMMUNICATION DEVICE, COMMUNICATION METHOD, COMMUNICATION SYSTEM, AND PROGRAM |
US9548933B2 (en) | 2012-03-05 | 2017-01-17 | Nec Corporation | Network system, switch, and methods of network configuration |
JPWO2013133227A1 (en) * | 2012-03-05 | 2015-07-30 | 日本電気株式会社 | Network system, switch, and network construction method |
WO2013133227A1 (en) * | 2012-03-05 | 2013-09-12 | 日本電気株式会社 | Network system, switch, and network building method |
US9386047B2 (en) | 2012-03-14 | 2016-07-05 | Huawei Technologies Co., Ltd. | Method, switch, server and system for sending connection establishment request |
JP2014511085A (en) * | 2012-03-14 | 2014-05-01 | ▲ホア▼▲ウェイ▼技術有限公司 | Method, switch, server, and system for sending a connection establishment request |
WO2013161172A1 (en) | 2012-04-27 | 2013-10-31 | 日本電気株式会社 | Communication system, and path control method |
JP5503762B1 (en) * | 2013-02-19 | 2014-05-28 | 三菱電機インフォメーションシステムズ株式会社 | Open flow network system |
WO2015025845A1 (en) * | 2013-08-20 | 2015-02-26 | 日本電気株式会社 | Communication system, switch, controller, ancillary data management device, data transfer method, and program |
US10498669B2 (en) | 2013-08-20 | 2019-12-03 | Nec Corporation | Communication system, switch, controller, ancillary data management apparatus, data forwarding method, and program |
US9699090B2 (en) | 2013-10-22 | 2017-07-04 | Fujitsu Limited | Transfer device, control device, and transfer method |
US9301232B2 (en) | 2014-03-04 | 2016-03-29 | Kddi Corporation | Management apparatus of controller for communication network |
US9628324B2 (en) | 2014-04-14 | 2017-04-18 | Fujitsu Limited | Openflow switch and failure recovery method in openflow network |
US9853857B2 (en) | 2015-04-20 | 2017-12-26 | Fujitsu Limited | System, switch device and method of controlling a plurality of switch devices |
Also Published As
Publication number | Publication date |
---|---|
JP5488979B2 (en) | 2014-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5488979B2 (en) | Computer system, controller, switch, and communication method | |
JP5488980B2 (en) | Computer system and communication method | |
EP2911348B1 (en) | Control device discovery in networks having separate control and forwarding devices | |
JP6369698B2 (en) | Traffic switching method, device, and system | |
KR101989333B1 (en) | Data forwarding method, device and system in software-defined networking | |
JP6075416B2 (en) | COMMUNICATION SYSTEM, CONTROL DEVICE, AND NODE CONTROL METHOD | |
EP3399703B1 (en) | Method for implementing load balancing, apparatus, and network system | |
JP5850068B2 (en) | Control device, communication system, communication method, and program | |
JP5757552B2 (en) | Computer system, controller, service providing server, and load distribution method | |
EP2157746A1 (en) | Routing control system for L3VPN service network | |
US20110286359A1 (en) | Route setup server, route setup method and route setup program | |
JP5861772B2 (en) | Network appliance redundancy system, control device, network appliance redundancy method and program | |
US20130286844A1 (en) | Information system, control apparatus, communication method, and program | |
US10171352B2 (en) | Communication system, node, control device, communication method, and program | |
JPWO2012050071A1 (en) | Communication system, control device, processing rule setting method and program | |
US8908702B2 (en) | Information processing apparatus, communication apparatus, information processing method, and relay processing method | |
WO2020135339A1 (en) | Network path convergence method and related device | |
JP2014027443A (en) | Control device, communication system, communication method, and program | |
JP2016502329A (en) | System and method for pass-through mode in a virtual chassis system | |
JPWO2013176262A1 (en) | Packet transfer system, control device, packet transfer method and program | |
US20150381775A1 (en) | Communication system, communication method, control apparatus, control apparatus control method, and program | |
WO2013062070A1 (en) | Control apparatus, communication system, virtual network management method, and program | |
JPWO2014104277A1 (en) | Control device, communication system, communication node control method and program | |
KR101767439B1 (en) | Method, apparatus and computer program for managing paths for packets of software defined network | |
EP1851913A1 (en) | Method and system for obtaining resilient communication in a network grid |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130115 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130920 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130927 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131115 |
|
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: 20140131 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140213 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5488979 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |