JP2014175938A - Communication system, communication method, control device, control device control method and program - Google Patents
Communication system, communication method, control device, control device control method and program Download PDFInfo
- Publication number
- JP2014175938A JP2014175938A JP2013048319A JP2013048319A JP2014175938A JP 2014175938 A JP2014175938 A JP 2014175938A JP 2013048319 A JP2013048319 A JP 2013048319A JP 2013048319 A JP2013048319 A JP 2013048319A JP 2014175938 A JP2014175938 A JP 2014175938A
- Authority
- JP
- Japan
- Prior art keywords
- switch
- communication
- communication node
- resource
- packet
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、通信システム、通信方法、制御装置、制御装置の制御方法及びプログラムに関する。特に、ネットワークに配置されたスイッチを集中制御する通信システム、通信方法、制御装置、制御装置の制御方法及びプログラムに関する。 The present invention relates to a communication system, a communication method, a control device, a control method for the control device, and a program. In particular, the present invention relates to a communication system, a communication method, a control device, a control method for the control device, and a program for centrally controlling switches arranged in a network.
近年、オープンフロー(OpenFlow)という技術が提案されている(非特許文献1、2参照)。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散、最適化を行うものである。非特許文献2に仕様化されているオープンフロースイッチは、オープンフローコントローラとの通信用のセキュアチャネルを備え、オープンフローコントローラから適宜追加又は書き換え指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合するマッチ条件(Match Fields)と、フロー統計情報(Counters)と、処理内容を定義したインストラクション(Instructions)と、の組が定義される(非特許文献2の「4.1 Flow Table」の項参照)。
In recent years, a technique called OpenFlow has been proposed (see Non-Patent
例えば、オープンフロースイッチは、パケットを受信すると、フローテーブルから、受信パケットのヘッダ情報に適合するマッチ条件(非特許文献2の「4.3 Match Fields」参照)を持つエントリを検索する。検索の結果、受信パケットに適合するエントリが見つかった場合、オープンフロースイッチは、フロー統計情報(カウンタ)を更新するとともに、受信パケットに対して、当該エントリのインストラクションフィールドに記述された処理内容(指定ポートからのパケット送信、フラッディング、廃棄等)を実施する。一方、検索の結果、受信パケットに適合するエントリが見つからなかった場合、オープンフロースイッチは、セキュアチャネルを介して、オープンフローコントローラに対してエントリ設定の要求、即ち、受信パケットを処理するための制御情報の送信要求(Packet−Inメッセージ)を送信する。オープンフロースイッチは、処理内容が定められたフローエントリを受け取ってフローテーブルを更新する。このように、オープンフロースイッチは、フローテーブルに格納されたエントリを制御情報として用いてパケット転送を行う。 For example, when the OpenFlow switch receives a packet, the OpenFlow switch searches the flow table for an entry having a matching condition (see “4.3 Match Fields” in Non-Patent Document 2) that matches the header information of the received packet. If an entry that matches the received packet is found as a result of the search, the OpenFlow switch updates the flow statistical information (counter) and processes the processing (designated) in the instruction field of the entry for the received packet. Perform packet transmission, flooding, discard, etc. from the port. On the other hand, if no entry matching the received packet is found as a result of the search, the OpenFlow switch sends an entry setting request to the OpenFlow controller via the secure channel, that is, a control for processing the received packet. An information transmission request (Packet-In message) is transmitted. The OpenFlow switch receives a flow entry whose processing content is defined and updates the flow table. As described above, the OpenFlow switch performs packet transfer using the entry stored in the flow table as control information.
さらに、複数のユーザがハードウェアやアプリケーションを共用するクラウドコンピューティングの利用が進んでいる。クラウドコンピューティングでは、複数のサーバやルータ等で構築されたデータセンタ内のリソースを、複数のテナントに分割して使用することが多い。このようなデータセンタでは、各テナントは物理的には同一のリソースを使用しつつも、テナントごとに独立したネットワークをユーザに提供する。 Furthermore, the use of cloud computing in which a plurality of users share hardware and applications is progressing. In cloud computing, resources in a data center constructed by a plurality of servers and routers are often divided into a plurality of tenants and used. In such a data center, each tenant uses the same physical resource, but provides an independent network to the user for each tenant.
特許文献1には、LAN(Local Area Network)内に、特定の端末間通信の経路を管理するPANサーバが開示されている。このPANサーバは、各端末機器の通信経路をラベル情報として設定し、各スイッチ、端末それぞれに、生成したラベル情報を設定させる。各接続スイッチは、自身のあるポートからのデータのフレーム中にPAN通信であることを示す情報が存在する場合、フレーム中に記述された経路ラベル情報で特定されたポートに出力する。
なお、上記先行技術文献の各開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明者らによってなされたものである。 Each disclosure of the above prior art document is incorporated herein by reference. The following analysis was made by the present inventors.
ブロードキャストパケットは、同一のドメインに属する通信ノードに向けて送信されるパケットである。換言すれば、ルータやL3スイッチ(レイヤ3スイッチ)等で物理的に仕切られていなければ、ブロードキャストパケットは同一のドメインに属する全ての通信ノードに到達する。即ち、クラウドコンピューティングのように、複数のユーザがデータセンタ内のリソースを共用する状況下では、ブロードキャストパケットが他のテナントに割り当てられた通信ノード(リソース)に到達する。より具体的には、特定のテナント向けに構築されたネットワークにおいて、ブロードキャストパケットが送出された場合に、他のテナント向けに構築されたネットワークに当該ブロードキャストパケットが転送されることを防ぐのは困難である(テナントごとのネットワークの独立性を確保するのが困難である)。しかし、それぞれのテナントは別個独立した存在であるため、他のテナント向けのネットワークにパケットが転送されることは、セキュリティ上の脅威となり得る。
The broadcast packet is a packet transmitted toward communication nodes belonging to the same domain. In other words, the broadcast packet reaches all communication nodes belonging to the same domain unless physically partitioned by a router, an L3 switch (
本発明は、リソースを共有するネットワークにおいて、当該ネットワークの安全性の向上に寄与する通信システム、通信方法、制御装置、制御装置の制御方法及びプログラムを提供することを目的とする。 An object of the present invention is to provide a communication system, a communication method, a control device, a control method for a control device, and a program that contribute to improving the security of the network in which resources are shared.
本発明の第1の視点によれば、グループ分けされた複数の通信ノードと、前記複数の通信ノード間を接続し、パケットを処理するための処理規則に従いパケットを処理するスイッチと、前記スイッチに処理規則を設定する制御装置と、を含み、前記制御装置は、通信ノードが同一のグループに属する他の複数の通信ノードに向けて送信するブロードキャストパケットを前記他の複数の通信ノードに転送するための処理規則を、前記スイッチに設定すると共に、前記ブロードキャストパケットを前記ブロードキャストパケットの送信元の通信ノードと異なるグループに属する通信ノードに転送するための処理規則を、前記スイッチに非設定とする通信システムが提供される。 According to a first aspect of the present invention, a plurality of communication nodes grouped, a switch that connects the plurality of communication nodes, and processes a packet according to a processing rule for processing the packet, and the switch A control device for setting a processing rule, wherein the control device forwards a broadcast packet transmitted to another plurality of communication nodes belonging to the same group to the plurality of other communication nodes. The processing rule is set in the switch, and the processing rule for transferring the broadcast packet to a communication node belonging to a group different from the communication node that is the transmission source of the broadcast packet is not set in the switch. Is provided.
本発明の第2の視点によれば、グループ分けされた複数の通信ノードと、前記複数の通信ノード間を接続し、パケットを処理するための処理規則に従いパケットを処理するスイッチと、を含む通信システムの通信方法であって、同一のグループに属する他の複数の通信ノードに向けてブロードキャストパケットを送信する工程と、前記ブロードキャストパケットを前記他の複数の通信ノードに転送するための処理規則を、前記スイッチに設定する工程と、を含む通信方法が提供される。
なお、本方法は、通信ノードと、スイッチという、特定の機械に結びつけられている。
According to a second aspect of the present invention, the communication includes a plurality of communication nodes grouped, and a switch that connects the plurality of communication nodes and processes a packet according to a processing rule for processing the packet. A communication method for a system, the step of transmitting a broadcast packet to a plurality of other communication nodes belonging to the same group, and a processing rule for transferring the broadcast packet to the plurality of other communication nodes. And setting the switch.
The method is associated with a specific machine such as a communication node and a switch.
本発明の第3の視点によれば、グループ分けされた複数の通信ノード間を接続するスイッチに、パケットを処理するための処理規則を設定する制御装置であって、通信ノードが同一のグループに属する他の複数の通信ノードに向けて送信するブロードキャストパケットを前記他の複数の通信ノードに転送するための処理規則を、前記スイッチに設定すると共に、前記ブロードキャストパケットを前記ブロードキャストパケットの送信元の通信ノードと異なるグループに属する通信ノードに転送するための処理規則を、前記スイッチに非設定とする制御装置が提供される。 According to a third aspect of the present invention, there is provided a control device that sets a processing rule for processing a packet in a switch that connects a plurality of grouped communication nodes, the communication nodes being in the same group. A processing rule for transferring a broadcast packet to be transmitted to a plurality of other communication nodes belonging to the plurality of other communication nodes is set in the switch, and the broadcast packet is transmitted to the transmission source of the broadcast packet. A control device is provided that does not set a processing rule for transferring to a communication node belonging to a group different from the node in the switch.
本発明の第4の視点によれば、グループ分けされた複数の通信ノード間を接続する複数のスイッチに、パケットを処理するための処理規則を設定する制御装置の制御方法であって、前記複数のスイッチのうちの第1のスイッチに接続される第1の通信ノードが、前記複数のスイッチのうちの第2のスイッチに接続され、且つ、前記第1の通信ノードと同一のグループに属する第2の通信ノード向けて、ブロードキャストパケットを送信する際に、グループと、グループに属する通信ノードの対応を示す管理情報、及び前記複数のスイッチと前記複数の通信ノード間の接続からなるネットワークのトポロジに基づいて、前記第1及び第2のスイッチを特定する工程と、前記ブロードキャストパケットを前記第2のスイッチに転送するための第1の処理規則を、前記第1のスイッチに設定する工程と、前記ブロードキャストパケットを前記第2の通信ノードに接続されるポートから送出するための第2の処理規則を、前記第2のスイッチに設定する工程と、を含む制御装置の制御方法が提供される。
なお、本方法は、パケットを処理するスイッチを制御する制御装置という、特定の機械に結びつけられている。
According to a fourth aspect of the present invention, there is provided a control method for a control device that sets processing rules for processing a packet in a plurality of switches that connect a plurality of grouped communication nodes. A first communication node connected to a first switch of the plurality of switches is connected to a second switch of the plurality of switches and belongs to the same group as the first communication node. When transmitting a broadcast packet to two communication nodes, the management information indicating the correspondence between the group and the communication node belonging to the group, and the topology of the network composed of the connections between the plurality of switches and the plurality of communication nodes Based on the first and second switches, and first for forwarding the broadcast packet to the second switch. A process rule is set in the first switch, and a second process rule for sending the broadcast packet from a port connected to the second communication node is set in the second switch. And a method for controlling the control device.
The method is associated with a specific machine called a control device that controls a switch that processes a packet.
本発明の第5の視点によれば、グループ分けされた複数の通信ノード間を接続する複数のスイッチに、パケットを処理するための処理規則を設定する制御装置を制御するコンピュータに実行させるプログラムであって、前記複数のスイッチのうちの第1のスイッチに接続される第1の通信ノードが、前記複数のスイッチのうちの第2のスイッチに接続され、且つ、前記第1の通信ノードと同一のグループに属する第2の通信ノード向けて、ブロードキャストパケットを送信する際に、グループと、グループに属する通信ノードの対応を示す管理情報、及び前記複数のスイッチと前記複数の通信ノード間の接続からなるネットワークのトポロジに基づいて、前記第1及び第2のスイッチを特定する処理と、
前記ブロードキャストパケットを前記第2のスイッチに転送するための第1の処理規則を、前記第1のスイッチに設定する処理と、前記ブロードキャストパケットを前記第2の通信ノードに接続されるポートから送出するための第2の処理規則を、前記第2のスイッチに設定する処理と、を実行させるプログラムが提供される。
なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント(non−transient)なものとすることができる。本発明は、コンピュータプログラム製品として具現することも可能である。
According to a fifth aspect of the present invention, there is provided a program that is executed by a computer that controls a control device that sets a processing rule for processing a packet in a plurality of switches that connect a plurality of grouped communication nodes. A first communication node connected to a first switch of the plurality of switches is connected to a second switch of the plurality of switches and is the same as the first communication node; When transmitting a broadcast packet to the second communication node belonging to the group, management information indicating correspondence between the group and the communication node belonging to the group, and connections between the plurality of switches and the plurality of communication nodes A process for identifying the first and second switches based on the topology of the network
A process for setting the first processing rule for transferring the broadcast packet to the second switch in the first switch, and the broadcast packet is transmitted from a port connected to the second communication node. And a process for setting a second processing rule for the second switch to the second switch.
This program can be recorded on a computer-readable storage medium. The storage medium can be non-transient such as a semiconductor memory, a hard disk, a magnetic recording medium, an optical recording medium, or the like. The present invention can also be embodied as a computer program product.
本発明の各視点によれば、リソースを共有するネットワークにおいて、当該ネットワークの安全性を高める通信システム、通信方法、制御装置、制御装置の制御方法及びプログラムが、提供される。 According to each aspect of the present invention, a communication system, a communication method, a control device, a control method for a control device, and a program for improving the security of the network in a network sharing resources are provided.
初めに、図1を用いて一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。 First, an outline of an embodiment will be described with reference to FIG. Note that the reference numerals of the drawings attached to the outline are attached to the respective elements for convenience as an example for facilitating understanding, and the description of the outline is not intended to be any limitation.
上述のように、リソースを共有するネットワークにおいては、当該ネットワークのセキュリティに問題が生じる可能性がある。そのため、リソースを共有するネットワークの安全性を高める通信システムが望まれる。 As described above, in a network that shares resources, there may be a problem with the security of the network. Therefore, a communication system that improves the security of a network that shares resources is desired.
そこで、一例として図1に示す通信システムを提供する。通信システムは、グループ分けされた複数の通信ノード101−1〜101−4と、複数の通信ノード101−1〜101−4間を接続し、パケットを処理するための処理規則に従いパケットを処理するスイッチ102と、スイッチ102に処理規則を設定する制御装置103と、を含む。制御装置103は、通信ノードが同一のグループに属する他の複数の通信ノードに向けて送信するブロードキャストパケットを他の複数の通信ノードに転送するための処理規則を、スイッチ102に設定すると共に、ブロードキャストパケットをブロードキャストパケットの送信元の通信ノードと異なるグループに属する通信ノードに転送するための処理規則を、スイッチ102に非設定とする。
Therefore, the communication system shown in FIG. 1 is provided as an example. The communication system connects a plurality of communication nodes 101-1 to 101-4 and a plurality of communication nodes 101-1 to 101-4, and processes the packets according to a processing rule for processing the packets. The
例えば、通信ノード101−1〜101−3が同一のグループに属し、且つ、通信ノード101−1がブロードキャストパケットを送信した場合は、制御装置103は、スイッチ102に対し、ブロードキャストパケットを通信ノード101−2及び101−3に転送する処理規則を設定する。より具体的には、制御装置103は、スイッチ102に対し、ブロードキャストパケットを通信ノード101−2及び101−2に接続されたポートから送出する処理規則を設定する。一方、制御装置103は、ブロードキャストパケットを、通信ノード101−4に接続されたポートから送出する処理規則を、スイッチ102に設定しない。通信ノード101−4は、通信ノード101−1とは異なるグループに属するためである。その結果、同一のグループに属する通信ノードに限りブロードキャストパケットは転送されることになり、ネットワークの安全性が向上する。
For example, when the communication nodes 101-1 to 101-3 belong to the same group and the communication node 101-1 transmits a broadcast packet, the
以下に具体的な実施の形態について、図面を参照してさらに詳しく説明する。 Hereinafter, specific embodiments will be described in more detail with reference to the drawings.
[第1の実施形態]
第1の実施形態について、図面を用いてより詳細に説明する。
[First Embodiment]
The first embodiment will be described in more detail with reference to the drawings.
図2は、第1の実施形態に係る通信システムの一例を示す図である。図2を参照すると、ネットワーク間の接続を実現するスイッチ10−1〜10−3と、スイッチ10−1〜10−3を含むネットワークを制御する制御装置20と、スイッチ10−1に接続された通信ノード30−1及び30−2と、スイッチ10−2に接続された通信ノード30−3と、スイッチ10−3に接続された通信ノード30−4及び30−5と、を含む構成が示されている。例えば、制御装置20はオープンフローコントローラに相当し、スイッチ10−1〜10−3はオープンフロースイッチに相当する。制御装置20と、スイッチ10−1〜10−3は、それぞれ、セキュアチャネルにより接続されている。
FIG. 2 is a diagram illustrating an example of a communication system according to the first embodiment. Referring to FIG. 2, switches 10-1 to 10-3 for realizing connection between networks, a
制御装置20は、通信ノード30−1〜30−5の稼働又は停止を制御する。より具体的には、制御装置20は、通信ノード30−1〜30−5に対して、制御メッセージを送信することで、それぞれの通信ノードを稼働させ、又は、停止する。なお、以降の説明において、スイッチ10−1〜10−3を特に区別する必要のないときは「スイッチ10」と表記する。同様に、通信ノード30−1〜30−5を特に区別する必要のないときは「通信ノード30」と表記する。また、図2に示す通信システムは例示であって、スイッチや通信ノードの個数及びこれらの接続は、図2の構成に限定されない。例えば、図2には複数のスイッチ10−1〜10−3を図示しているが、通信ノード30−1〜30−5の間を接続するスイッチは1つでもよい。
The
図2に示す通信システムは、例えば、通信ノード30−1〜30−3がテナントAに割り当てられ、通信ノード30−4及び30−5が別のテナントBに割り当てられ、運用される。このように、通信システムに含まれる複数の通信ノード30−1〜30−5は、複数のグループに分けられ、各テナントに割り当てられる。但し、各テナントに割り当てる通信ノード30は、固定的ではなく、各テナントが利用できる通信ノード30は変化する。例えば、ある期間T1では、テナントAに通信ノード30−1〜30−3が、テナントBに通信ノード30−4及び30−5が、それぞれ割り当てられる。しかし、別の期間T2では、テナントAに通信ノード30−1及び30−2が、テナントBに通信ノード30−3〜30−5が、それぞれ割り当てられる。このような場合には、テナントA及びBは、通信ノード30−3を共用する。このように、本実施形態に係る通信システムは、フローベースのネットワークを構築し、各テナントに割り当てるリソースを適宜切り替えることで、リソース(通信ノード30)の活用度を高めている。 In the communication system shown in FIG. 2, for example, the communication nodes 30-1 to 30-3 are allocated to the tenant A, and the communication nodes 30-4 and 30-5 are allocated to another tenant B and operated. Thus, the plurality of communication nodes 30-1 to 30-5 included in the communication system are divided into a plurality of groups and assigned to each tenant. However, the communication nodes 30 allocated to each tenant are not fixed, and the communication nodes 30 that can be used by each tenant vary. For example, in a certain period T1, communication nodes 30-1 to 30-3 are allocated to tenant A, and communication nodes 30-4 and 30-5 are allocated to tenant B, respectively. However, in another period T2, the communication nodes 30-1 and 30-2 are allocated to the tenant A, and the communication nodes 30-3 to 30-5 are allocated to the tenant B, respectively. In such a case, tenants A and B share the communication node 30-3. As described above, the communication system according to the present embodiment increases the degree of utilization of resources (communication nodes 30) by constructing a flow-based network and appropriately switching the resources allocated to each tenant.
次に、図2に示す通信システムにおいて、通信ノード30がブロードキャストパケットを送信した場合の動作について概説する。 Next, the operation when the communication node 30 transmits a broadcast packet in the communication system shown in FIG. 2 will be outlined.
通信ノード30がブロードキャストパケットを送信した場合、当該ブロードキャストパケットは、ブロードキャストパケットを送信した通信ノード30と同じテナントに属する通信ノードに限り、転送される必要がある。例えば、上述の期間T1では、テナントAに属する通信ノード30−1が送信したブロードキャストパケットは、通信ノード30−2及び30−3に転送される必要があるが、別のテナントBに属する通信ノード30−4及び30−5には転送しない。 When the communication node 30 transmits a broadcast packet, the broadcast packet needs to be transferred only to a communication node belonging to the same tenant as the communication node 30 that transmitted the broadcast packet. For example, in the above-described period T1, the broadcast packet transmitted by the communication node 30-1 belonging to the tenant A needs to be transferred to the communication nodes 30-2 and 30-3, but the communication node belonging to another tenant B It is not transferred to 30-4 and 30-5.
一方、上述の期間T2では、テナントAに属する通信ノード30−1が送信したブロードキャストパケットは、通信ノード30−2に転送される必要があるが、別のテナントBに属する通信ノード30−3〜30−5には転送しない。制御装置20は、各テナントへの通信ノード30の割り当て状況及びテナントに割り当てられた通信ノード30の動作状態(稼働状態又は停止状態)を、リソース管理情報として管理する。制御装置20は、このリソース管理情報に基づいて、適宜、スイッチ10に処理規則を設定することで、ブロードキャストパケットを適切な通信ノード30に転送する。
On the other hand, in the above-described period T2, the broadcast packet transmitted by the communication node 30-1 belonging to the tenant A needs to be transferred to the communication node 30-2, but the communication node 30-3 belonging to another tenant B is required. It is not transferred to 30-5. The
通信ノード30は、サーバ等の計算機である。但し、通信ノード30をサーバに限定する趣旨ではなく、ファイアウォール、ロードバランサ、暗号化装置等であってもよい。また、通信ノード30は物理マシンに限定されず、仮想マシンであってもよく、通信システム内に物理マシンと仮想マシンが混在していてもよい。 The communication node 30 is a computer such as a server. However, the communication node 30 is not limited to a server, and may be a firewall, a load balancer, an encryption device, or the like. Further, the communication node 30 is not limited to a physical machine, and may be a virtual machine, and a physical machine and a virtual machine may be mixed in the communication system.
通信ノード30は、制御装置20から制御メッセージを受信し、動作モードを切り替える。例えば、制御装置20から、停止状態から稼働状態への遷移が指示されると、通信ノード30は、起動処理(ブート処理)を実行する。また、制御装置20から、稼働状態から停止状態への遷移が指示されると、通信ノード30は、終了処理(シャットダウン処理)を実行する。あるいは、起動処理や終了処理に代えて、通信ノード30は、テナントに提供するサービスを開始(ジョブの開始)し、又は終了(ジョブの終了)してもよい。
The communication node 30 receives the control message from the
図3は、スイッチ10の内部構成の一例を示す図である。スイッチ10は、通信部11と、テーブル管理部12と、テーブルデータベース(テーブルDB)13と、転送処理部14と、を含んで構成されている。
FIG. 3 is a diagram illustrating an example of the internal configuration of the
通信部11は、スイッチ10に処理規則(フローエントリ)を設定する制御装置20との通信を実現する手段である。本実施形態では、通信部11は、非特許文献2のオープンフロープロトコルを用いて制御装置20と通信するものとする。但し、通信部11と制御装置20との通信プロトコルは、オープンフロープロトコルに限定されるものではない。
The
テーブル管理部12は、テーブルDB13に保持されているフローテーブルを管理する手段である。より具体的には、テーブル管理部12は、制御装置20から指示された処理規則をテーブルDB13に登録し、転送処理部14から新規パケットを受信したことが通知されると、制御装置20に処理規則の設定を要求する。
The
テーブルDB13は、転送処理部14が受信パケットの処理を行う際に参照するフローテーブルを1つ以上格納可能なデータベースによって構成される。
The
転送処理部14は、テーブル検索部141と、アクション実行部142と、を含んで構成される。テーブル検索部141は、テーブルDB13に格納されたフローテーブルから、受信パケットに適合するマッチフィールドを持つエントリを検索する手段である。アクション実行部142は、テーブル検索部141にて検索されたエントリのインストラクションフィールドに示す処理内容に従ってパケット処理を行う手段である。
The
転送処理部14は、受信パケットに適合するマッチフィールドを持つエントリが見つからなかった場合は、その旨をテーブル管理部12に通知する。さらに、転送処理部14は、パケット処理に応じて、テーブルDB13に登録されている統計情報を更新する。
If no entry having a match field that matches the received packet is found, the
図4は、スイッチ10に設定する処理規則の一例を示す図である。図4を参照すると、受信パケットのパケットヘッダと照合するルールを格納するマッチフィールド(Match Field)と、ルールに適合するパケット等の統計情報を格納するフロー統計情報フィールド(Counters)と、ルールに適合するパケットに適用する処理内容(Action)を格納するインストラクションフィールド(Instructions)と、を対応付けたエントリ(処理規則)が示されている。なお、マッチフィールドには、入力ポートや送信元MACアドレス等に関するルールを格納する複数のカラムが含まれる。また、受信パケットのパケットヘッダと照合するルールとして、マッチフィールドの条件にワイルドカードを設定してもよい。
FIG. 4 is a diagram illustrating an example of processing rules set in the
図5は、インストラクションフィールドに設定可能な処理内容とその内容の一例の図である。図5を参照すると、例えば、OUTPUTは、受信パケットを指定ポート(インタフェース)に出力するアクションであることが分かる。また、SET_VLAN_VIDからSET_TP_DSTは、パケットヘッダのフィールドを修正するアクションである。これらを組み合わせ、スイッチ10は、例えば、ある送信元から宛先に送信されるパケットのVLAN IDを書き換えた上で、パケットを指定ポートから出力できる。
FIG. 5 is a diagram of processing contents that can be set in the instruction field and an example of the contents. Referring to FIG. 5, for example, OUTPUT is an action for outputting a received packet to a designated port (interface). Also, SET_VLAN_VID to SET_TP_DST are actions for correcting the field of the packet header. By combining these, the
図6は、制御装置20の内部構成の一例を示す図である。制御装置20は、トポロジ管理部21と、トポロジデータベース(トポロジDB)22と、制御メッセージ処理部23と、経路・アクション計算部24と、パケット転送経路データベース(パケット転送経路DB)25と、処理規則管理部26と、処理規則データベース(処理規則DB)27と、ブロードキャスト範囲決定部28と、構成変更処理部29と、リソース情報データベース(リソース情報DB)31と、スイッチ10との通信を行うノード通信部32と、を含んで構成される。
FIG. 6 is a diagram illustrating an example of the internal configuration of the
トポロジ管理部21は、制御メッセージ処理部23及びノード通信部32を介して、制御装置20が制御対象とするスイッチ10の接続情報(スイッチ10と通信ノード30の接続に関する情報、スイッチ10同士の接続に関する情報)を集約し、ネットワークのトポロジを管理する。トポロジ管理部21は、スイッチ10に対して、接続情報の提供を要求し、その応答から得られる情報に基づき、ネットワークのトポロジを管理してもよいし、通信システムの管理者がトポロジを予め制御装置20に入力してもよい。
The
トポロジDB22は、ネットワークのトポロジを記憶するデータベースである。制御装置20が制御対象とするネットワークのトポロジは、スイッチ10同士の接続と、スイッチ10と通信ノード30との接続と、から成り立つため、トポロジDB22はこれらの接続に関する情報を記憶する。
The topology DB 22 is a database that stores the network topology. Since the topology of the network to be controlled by the
図7は、トポロジDB22のエントリの一例を示す図である。図7(a)は、スイッチ10同士の接続に関するエントリである。図7(a)を参照すると、スイッチ10同士の接続は、それぞれのスイッチ10を識別するDPID(DataPath ID)と、DPIDに対応したポート番号の組により規定される。
FIG. 7 is a diagram illustrating an example of entries in the topology DB 22. FIG. 7A shows an entry related to the connection between the
図7(b)は、スイッチ10と通信ノード30の接続に関するエントリである。図7(b)を参照すると、スイッチ10のDPIDとそのポート番号、及び、当該ポートに接続される通信ノード30が備えるNIC(Network Interface Card)のMACアドレスの対応付けにより、スイッチ10と通信ノード30の接続が規定される。なお、以降の説明において、通信機器(例えば、スイッチ10や通信ノード30)のMACアドレスと表記した場合には、当該通信機器が備えるNICのMACアドレスを意味するものとする。
FIG. 7B shows an entry related to the connection between the
制御メッセージ処理部23は、スイッチ10から受信したメッセージを解析して、制御装置20内の該当する処理手段に引き渡す。
The control
経路・アクション計算部24は、トポロジDB22が記憶するネットワークのトポロジに基づいて、フローごとのパケット転送経路を計算する。経路・アクション計算部24は、計算したパケット転送経路をパケット転送経路DB25に登録する。経路・アクション計算部24は、スイッチ10から処理規則の設定を要求された場合に、パケット転送経路を計算する。
The route /
また、経路・アクション計算部24は、ブロードキャスト範囲決定部28から、ブロードキャストパケットを転送する範囲(スイッチ10及びその接続ポート)が指定され、ブロードキャスト用のパケット転送経路の計算の指示を受ける。経路・アクション計算部24は、指示に従って計算したブロードキャスト用のパケット転送経路をパケット転送経路DB25に登録する。なお、以降の説明において、ブロードキャスト用のパケット転送経路を、ブロードキャスト経路と表記する。また、ユニキャスト用のパケット転送経路を、ユニキャスト経路と表記する。経路・アクション計算部24は、ユニキャスト経路とブロードキャスト経路を計算し、それぞれのパケット転送経路を異なるフォーマットを用いてパケット転送経路DB25に登録する。
Further, the route /
図8は、パケット転送経路DB25のエントリの一例を示す図である。図8(a)は、ユニキャスト経路に関するエントリの一例である。ユニキャスト経路に関するエントリは、IN情報フィールド、OUT情報フィールド及びリンク情報フィールドから構成される。IN情報フィールドは、パケットを最初に入力するポートを格納する。OUT情報フィールドは、最後にパケットを出力するポートを格納する。リンク情報フィールドは、通過するリンクに関する情報を格納する。 FIG. 8 is a diagram illustrating an example of entries in the packet transfer path DB 25. FIG. 8A is an example of an entry related to a unicast route. An entry related to a unicast route is composed of an IN information field, an OUT information field, and a link information field. The IN information field stores a port where a packet is first input. The OUT information field stores the port that outputs the packet last. The link information field stores information about the link that passes through.
図8(b)は、ブロードキャスト経路に関するエントリの一例である。ブロードキャスト経路に関するエントリは、テナントを識別するためのテナントIDを格納するテナントIDフィールドと、ブロードキャスト経路を実現する処理規則のマッチングルールに相当する情報を格納するルール部フィールドと、から構成される。ルール部フィールドは、ブロードキャスト経路を実現するスイッチ10ごとに用意される。例えば、図2において、ブロードキャスト経路が、スイッチ10−1(始点)、スイッチ10−2、スイッチ10−3(終点)とすれば、スイッチ10−1及びスイッチ10−2に設定する処理規則のマッチングルールが、ルール部フィールドに格納される。より詳細には、ルール部フィールドに、ブロードキャストパケットを送信した通信ノード30のMACアドレスと、ブロードキャストアドレスが格納される。
FIG. 8B is an example of an entry related to a broadcast route. The entry related to the broadcast path is composed of a tenant ID field that stores a tenant ID for identifying a tenant and a rule part field that stores information corresponding to a matching rule of a processing rule that realizes the broadcast path. The rule field is prepared for each
処理規則管理部26は、スイッチ10に設定する処理規則を管理する。処理規則管理部26は、経路・アクション計算部24にて計算されたパケット転送経路に基づき、スイッチ10に設定する処理規則を生成し、生成した処理規則を処理規則DB27に登録する。また、処理規則管理部26は、ブロードキャスト範囲決定部28の指示に基づき、スイッチ10に設定する処理規則を生成し、生成した処理規則を処理規則DB27に登録する。あるいは、処理規則管理部26は、ブロードキャスト範囲決定部28の指示に基づき、スイッチ10の設定された処理規則を削除する。さらに、処理規則管理部26は、計算した処理規則を、制御メッセージ処理部23及びノード通信部32を介してスイッチ10に設定する。
The processing
より具体的には、処理規則管理部26は、経路・アクション計算部24が計算したユニキャスト経路に基づき、通信ノード間のユニキャストパケットを転送するための処理規則を生成し、スイッチ10に設定する。また、処理規則管理部26は、経路・アクション計算部24が計算したブロードキャスト経路に基づき、ブロードキャストパケットを、テナントに属する通信ノード30に転送するための処理規則を生成し、スイッチ10に設定する。
More specifically, the processing
パケット転送経路を実現するための処理規則には、性質の異なる2つの処理規則が存在する。第1の処理規則は、あるスイッチ10から他のスイッチ10にパケットを転送するための処理規則である。第2の処理規則は、パケットを受信する通信ノード30に接続されたポートからパケットを送出するための処理規則である。なお、ブロードキャスト経路を実現する処理規則であって、第1の処理規則に相当する処理規則をブロードキャスト転送規則、第2の処理規則に相当する処理規則をパケットアウト規則、とそれぞれ表記し、以降の説明を行う。
There are two processing rules having different properties as processing rules for realizing the packet transfer path. The first processing rule is a processing rule for transferring a packet from one
ブロードキャスト範囲決定部28は、リソース情報DB31が記憶するリソース管理情報とトポロジ情報に基づいて、テナントに属する通信ノード30が送信するブロードキャストパケットを転送すべきスイッチ10及びその接続ポートを決定する手段である。ブロードキャスト範囲決定部28は、決定したスイッチ10及びその接続ポートを指定し、経路・アクション計算部24に対して、ブロードキャスト経路の計算を指示する。あるいは、ブロードキャスト範囲決定部28は、処理規則管理部26に対して、パケットアウト規則の生成及びスイッチ10への設定又は削除を指示する。
The broadcast
構成変更処理部29は、リソース情報DB31が記憶するリソース管理情報に基づいて、テナントに提供するネットワークのトポロジの変化を認識する。さらに、構成変更処理部29は、認識したトポロジの変化をトポロジDB22に反映する。例えば、リソース管理情報が書き換えられて、テナントに割り当てられた通信ノード30が削除された場合には、ネットワークから当該通信ノード30が消滅したことと等しいので、通信ノード30の消滅をトポロジDB22に反映する。 The configuration change processing unit 29 recognizes a change in the topology of the network provided to the tenant based on the resource management information stored in the resource information DB 31. Further, the configuration change processing unit 29 reflects the recognized topology change in the topology DB 22. For example, when the resource management information is rewritten and the communication node 30 assigned to the tenant is deleted, this is equivalent to the disappearance of the communication node 30 from the network, so the disappearance of the communication node 30 is reflected in the topology DB 22. To do.
また、構成変更処理部29は、リソース情報DB31が記憶するリソース管理情報に基づいて、通信ノード30の動作モードを切り替える。例えば、リソース管理情報が、通信ノード30−1の停止を示す場合には、構成変更処理部29が、制御メッセージ処理部23及びノード通信部32を介して、通信ノード30−1に制御メッセージを送信することで、通信ノード30−1を停止する。
Further, the configuration change processing unit 29 switches the operation mode of the communication node 30 based on the resource management information stored in the resource information DB 31. For example, when the resource management information indicates that the communication node 30-1 is stopped, the configuration change processing unit 29 sends a control message to the communication node 30-1 via the control
リソース情報DB31は、リソース管理情報を記憶する。図9は、リソース情報DB31のエントリの一例を示す図である。リソース情報DB31のエントリは、通信ノード30を一意に識別するリソースIDフィールドと、通信ノード30の種別(例えば、サーバ、仮想マシン、ファイアウォール、ロードバランサ、暗号化装置等)を示すリソース種別フィールドと、通信ノード30の動作状態(稼働状態/停止状態)を示す状態管理フラグと、通信ノード30が属するグループを識別するグループIDフィールドと、通信ノード30に関するその他の属性値を格納するリソース属性フィールドと、から構成される(図9(a)参照)。なお、グループIDには、通信ノード30が属するグループを示す値と、通信ノード30がいずれのグループにも属さないことを示す値と、が格納され得る。このように、リソース管理情報は、少なくとも、グループと、グループに属する通信ノード30の対応を示す。あるいは、リソース管理情報は、各グループ(テナント)を識別するID、各グループに属するリソース(通信ノード30)を識別するID、各グループに属するリソース(通信ノード)の動作状態を示す情報である。 The resource information DB 31 stores resource management information. FIG. 9 is a diagram illustrating an example of entries in the resource information DB 31. The entry of the resource information DB 31 includes a resource ID field for uniquely identifying the communication node 30, a resource type field indicating the type of the communication node 30 (for example, server, virtual machine, firewall, load balancer, encryption device, etc.), A state management flag indicating the operating state (operating state / stopped state) of the communication node 30, a group ID field for identifying a group to which the communication node 30 belongs, a resource attribute field for storing other attribute values related to the communication node 30, (See FIG. 9A). In the group ID, a value indicating a group to which the communication node 30 belongs and a value indicating that the communication node 30 does not belong to any group can be stored. Thus, the resource management information indicates at least the correspondence between the group and the communication node 30 belonging to the group. Alternatively, the resource management information is information indicating an ID for identifying each group (tenant), an ID for identifying a resource (communication node 30) belonging to each group, and an operation state of the resource (communication node) belonging to each group.
図9(b)は、図2に示す通信システムのリソース管理情報の一例である。図9(b)を参照すると、通信ノード30−1〜30−3はテナントAに属し、これらの通信ノード30は稼働状態であることが分かる。また、通信ノード30−4及び30−5はテナントBに属し、通信ノード30−4は稼働状態、通信ノード30−5は停止状態であることが分かる。 FIG. 9B is an example of resource management information of the communication system shown in FIG. Referring to FIG. 9B, it can be seen that the communication nodes 30-1 to 30-3 belong to the tenant A, and these communication nodes 30 are in an operating state. Further, it can be seen that the communication nodes 30-4 and 30-5 belong to the tenant B, the communication node 30-4 is in an operating state, and the communication node 30-5 is in a stopped state.
なお、リソース管理情報は、制御装置20の外部から書き換え可能である。例えば、図2において図示しない端末等を用いて、通信システムの管理者(データセンタの管理者)がリソース管理情報を書き換えることで、各テナントに割り当てる通信ノード30と、その動作状態を管理する。
The resource management information can be rewritten from outside the
なお、図3、図6に示したスイッチ10、制御装置20の各部(処理手段)は、これらの装置を構成するコンピュータに、そのハードウェアを用いて、後述する各処理を実行させるコンピュータプログラムにより実現することもできる。
Each unit (processing means) of the
次に、スイッチ10及び制御装置20の動作について説明する。
Next, operations of the
図10は、スイッチ10の動作の一例を示すフローチャートである。図10は、スイッチ10がパケットを受け取った際の動作例を示す。
FIG. 10 is a flowchart illustrating an example of the operation of the
スイッチ10の転送処理部14は、テーブルDB13に格納されている処理規則のマッチフィールドと受信パケットのパケットヘッダを比較し、受信パケットのパケットヘッダに一致する処理規則が存在するか否かを検索する(ステップS101、S102)。
The
受信パケットのパケットヘッダに一致するマッチフィールドを持つ処理規則が存在する場合(ステップS102、Yes分岐)には、転送処理部14は、ステップS101で検索した処理規則のインストラクションフィールドに指定されている処理(Action)を受信パケットに対して実行する(ステップS103)。
When there is a processing rule having a match field that matches the packet header of the received packet (step S102, Yes branch), the
一方、受信パケットのパケットヘッダに一致するマッチフィールドを持つ処理規則が存在しない場合(ステップS102、No分岐)には、受信パケットを制御装置20に転送する(ステップS104)。なお、図10のフローチャートには示されていないが、スイッチ10は、制御装置20から、FlowModメッセージを受け取ることで、テーブルDB13が記憶するフローエントリの追加(ADD)又は削除(DEL)を行う。
On the other hand, when there is no processing rule having a match field that matches the packet header of the received packet (step S102, No branch), the received packet is transferred to the control device 20 (step S104). Although not shown in the flowchart of FIG. 10, the
図11は、制御装置20の動作の一例を示すフローチャートである。図11は、スイッチ10からパケットが送られてきた場合における制御装置20の動作例を示す。
FIG. 11 is a flowchart illustrating an example of the operation of the
スイッチ10が送信するパケットを受信すると、制御メッセージ処理部23は、当該パケットがブロードキャストパケットか否かを判定する(ステップS201)。
When receiving the packet transmitted by the
ブロードキャストパケットでなければ(ステップS201、No分岐)、ステップS202〜S206に係る処理が実行される。一方、ブロードキャストパケットであれば(ステップS201、Yes分岐)、ステップS207〜S213に係る処理が実行される。 If it is not a broadcast packet (step S201, No branch), the process which concerns on step S202-S206 is performed. On the other hand, if it is a broadcast packet (step S201, Yes branch), the processing according to steps S207 to S213 is executed.
ステップS202において、経路・アクション計算部24が、パケットヘッダから送信元と宛先の通信ノード30を算出すると共に、トポロジDB22が記憶するネットワークのトポロジを用いて、パケット転送経路(ユニキャスト経路)を計算する。その後、経路・アクション計算部24は、前ステップで計算したユニキャスト経路を、パケット転送経路DB25に登録する(ステップS203)。
In step S202, the route /
ステップS204において、処理規則管理部26は、経路・アクション計算部24が計算したユニキャスト経路を実現する処理規則(フローエントリ)を生成する。その後、処理規則管理部26は、生成した処理規則を処理規則DB27に登録すると共に、対応するスイッチ10に処理規則を、制御メッセージ処理部23及びノード通信部32を介して設定する(ステップS205)。
In step S204, the processing
ステップS206において、処理規則管理部26は、宛先の通信ノード30に最も近接するスイッチ10に対して、宛先の通信ノード30にパケットを送出するように指示(パケットアウトを指示)すると共に、パケットを当該通信ノード30に送信する。
In step S206, the processing
ステップS207において、ブロードキャスト範囲決定部28は、受信したブロードキャストパケットを転送すべきスイッチ10及びその接続ポートを決定する(ブロードキャスト範囲を決定する)。より具体的には、ブロードキャスト範囲決定部28は、ブロードキャストパケットを送信した通信ノード30と同一のグループに属する通信ノード30が接続されたスイッチ10とその接続ポートを割り出す。その際、ブロードキャスト範囲決定部28は、リソース情報DB31を検索し、ブロードキャストパケットの送信元の通信ノード30と同一のグループに属する通信ノード群を取得する。
In step S207, the broadcast
例えば、図9(b)に示すようなリソース管理情報がリソース情報DB31に登録されている場合に、通信ノード30−1がブロードキャストパケットを送信すれば、通信ノード30−2及び30−3が、同一のグループに属する通信ノードとして取得できる。その後、ブロードキャスト範囲決定部28は、トポロジDB22が記憶するネットワークのトポロジを参照することで、取得した通信ノード群が接続されたスイッチ10とその接続ポートを割り出す。上述の例では、スイッチ10−1及び10−2が、取得した通信ノード群が接続されたスイッチ10として割り出される。ブロードキャスト範囲決定部28は、割り出したスイッチ10及びその接続ポートを指定して、経路・アクション計算部24に対して、パケット転送経路の計算を指示する。
For example, when the resource management information as shown in FIG. 9B is registered in the resource information DB 31, if the communication node 30-1 transmits a broadcast packet, the communication nodes 30-2 and 30-3 It can be acquired as a communication node belonging to the same group. Thereafter, the broadcast
ステップS208において、経路・アクション計算部24は、ブロードキャスト経路を計算する。より具体的には、経路・アクション計算部24は、最初にブロードキャストパケットを受信したスイッチ10と、前ステップにおいて割り出したスイッチ10間のブロードキャスト経路を計算する(ステップS208)。
In step S208, the route /
その後、経路・アクション計算部24は、前ステップで計算したブロードキャスト経路を、パケット転送経路DB25に登録する(ステップS209)。より具体的には、送信元の通信ノード30が含まれるテナントのテナントIDをテナントIDフィールドに格納し、送信元の通信ノード30のMACアドレスとブロードキャストアドレスを、ルール部フィールドに格納する。
Thereafter, the route /
ステップS210及びS11において、処理規則管理部26は、経路・アクション計算部24が計算したブロードキャスト経路を実現する処理規則を生成する。より詳細には、ステップS210において、処理規則管理部26は、ブロードキャスト転送規則を生成する。また、ステップS211において、処理規則管理部26は、パケットアウト規則を生成する。
In steps S <b> 210 and S <b> 11, the processing
その後、処理規則管理部26は、ステップS210及びS211で生成した処理規則を処理規則DB27に登録すると共に、対応するスイッチ10に処理規則を、制御メッセージ処理部23及びノード通信部32を介して設定する(ステップS212)。例えば、図9(b)に示すリソース管理情報が登録されている場合に、通信ノード30−1がブロードキャストパケットを送信すれば、ブロードキャスト転送規則として、スイッチ10−1からスイッチ10−2にブロードキャストパケットを転送する処理規則が生成され、スイッチ10−1に設定される。
Thereafter, the processing
また、パケットアウト規則として、スイッチ10−1のポートであって、通信ノード30−2に接続されたポートからブロードキャストパケットを送出する処理規則(パケットアウト規則)が生成され、スイッチ10−1に設定される。同様に、スイッチ10−2に対しても、ブロードキャストパケットを通信ノード30−3に接続されたポートから送出する処理規則(パケットアウト規則)が設定される。 Also, as a packet out rule, a processing rule (packet out rule) for sending a broadcast packet from a port of the switch 10-1 that is connected to the communication node 30-2 is generated and set in the switch 10-1. Is done. Similarly, a processing rule (packet-out rule) for sending a broadcast packet from a port connected to the communication node 30-3 is set for the switch 10-2.
ステップS213において、処理規則管理部26は、受信したパケットを送信したスイッチ10に返却する。なお、ステップS202及びS208におけるパケット転送経路(ユニキャスト経路及びブロードキャスト経路)の計算には、ダイクストラ法を初めとした種々の経路探索手法を用いることができる。
In step S213, the processing
図12は、制御装置20の動作の一例を示すフローチャートである。図12は、リソース管理情報を書き換えることで、テナント(グループ)に属する通信ノード30の稼働が、制御装置20に通知された場合の動作例を示す。
FIG. 12 is a flowchart illustrating an example of the operation of the
グループと、稼働する通信ノード30が指定されて通信ノード30の稼働が通知されると、ブロードキャスト範囲決定部28は、指定されたテナントにブロードキャスト経路が存在するか否かを判定する(ステップS221)。より具体的には、ブロードキャスト範囲決定部28は、パケット転送経路DB25を検索し、ルール部フィールドにブロードキャストアドレスが格納されているエントリの有無に基づき、ブロードキャスト経路の存在を確認する。
When the group and the operating communication node 30 are specified and the operation of the communication node 30 is notified, the broadcast
ブロードキャスト経路が存在しなければ(ステップS221、No分岐)、処理を終了する。一方、ブロードキャスト経路が存在すれば(ステップS221、Yes分岐)、ブロードキャスト範囲決定部28は、トポロジDB22を検索することで、指定された通信ノード30が接続されたスイッチ10を特定する(ステップS222)。ブロードキャスト範囲決定部28は、特定したスイッチ10を指定し、処理規則管理部26に対し、パケットアウト規則(処理規則)の生成を指示する。
If there is no broadcast path (step S221, No branch), the process is terminated. On the other hand, if a broadcast path exists (step S221, Yes branch), the broadcast
次に、処理規則管理部26は、前ステップにおいて指定されたスイッチ10に設定するパケットアウト規則を生成する(ステップS223)。なお、ステップS221で確認したように、指定されたテナントには既にブロードキャスト経路が存在している。つまり、スイッチ10には既にブロードキャスト転送規則が設定されている。そのため、スイッチ10に対してパケットアウト規則を生成すれば足りる。その後、処理規則管理部26は、前ステップで生成した処理規則を処理規則DB27に登録すると共に、対応するスイッチ10に処理規則を、制御メッセージ処理部23及びノード通信部32を介して設定する(ステップS224)。
Next, the processing
図13は、制御装置20の動作の一例を示すフローチャートである。図13は、リソース管理情報を書き換えることで、テナントへの通信ノード30の追加が、制御装置20に通知された場合の動作例を示す。
FIG. 13 is a flowchart illustrating an example of the operation of the
グループと、通信ノードが指定されて通信ノード30の追加が通知されると、ブロードキャスト範囲決定部28は、指定されたテナントにブロードキャスト経路が存在するか否かを判定する(ステップS231)。
When the group and the communication node are specified and the addition of the communication node 30 is notified, the broadcast
ブロードキャスト経路が存在しなければ(ステップS231、No分岐)、処理を終了する。一方、ブロードキャスト経路が存在すれば(ステップS231、Yes分岐)、ブロードキャスト範囲決定部28は、トポロジDB22を検索することで、指定された通信ノード30が接続されたスイッチ10を特定する(ステップS232)。
If there is no broadcast route (step S231, No branch), the process is terminated. On the other hand, if a broadcast route exists (step S231, Yes branch), the broadcast
その後、ブロードキャスト範囲決定部28は、前ステップにおいて特定されたスイッチ10に、指定されたテナントの他の通信ノード30が接続されているか否かを判定する(ステップS233)。より具体的には、ブロードキャスト範囲決定部28は、トポロジDB22を検索することで、前ステップで特定されたスイッチ10に、指定されたテナントと同一のグループに属する他の通信ノード30が既に接続されているか否かを判定する。
Thereafter, the broadcast
特定されたスイッチ10に、指定されたテナントの他の通信ノード30が既に接続されている場合(ステップS233、Yes分岐)には、処理を終了する。この場合には、追加された通信ノード30が接続されたスイッチ10に至るブロードキャスト経路が形成されているためである。一方、特定されたスイッチ10に指定されたテナントの他の通信ノード30が接続されていない(ステップS233、No分岐)場合には、ブロードキャスト範囲決定部28は、経路・アクション計算部24に対して、既に存在するブロードキャスト経路の始点から、ステップS232で特定したスイッチ10までのブロードキャスト経路の計算を指示する(ステップS234)。経路・アクション計算部24は、指示に従いブロードキャスト経路を計算する。
If another communication node 30 of the specified tenant has already been connected to the identified switch 10 (step S233, Yes branch), the process ends. This is because a broadcast route to the
次に、処理規則管理部26は、前ステップにおいて計算されたブロードキャスト経路を実現する処理規則(ブロードキャスト転送規則)を生成する(ステップS235)。その後、処理規則管理部26は、前ステップで生成したブロードキャスト転送規則を処理規則DB27に登録すると共に、対応するスイッチ10にブロードキャスト転送規則を、制御メッセージ処理部23及びノード通信部32を介して設定する(ステップS236)。
Next, the processing
ここで、例えば、図2に示す通信システムにおいて、通信ノード30−1〜30−3がテナントAに割り当てられ、且つ、スイッチ10−1からスイッチ10−2へのブロードキャスト経路が設定されている状況において、通信ノード30−4がテナントAに追加された場合を考える。この場合、テナントAのためのブロードキャスト経路自体は存在するが、スイッチ10−2からスイッチ10−3までのブロードキャスト経路が存在しない。そこで、ブロードキャスト範囲決定部28は、スイッチ10−2からスイッチ10−3へのブロードキャスト経路を、経路・アクション計算部24に計算させる。処理規則管理部26は、計算されたブロードキャスト経路に基づいて、スイッチ10−2にブロードキャスト転送規則を設定する。但し、テナントに通信ノード30が追加されただけの状況下では、ブロードキャストパケットを新たに追加された通信ノード30に転送する必要はない。即ち、スイッチ10−3にパケットアウト規則を設定する必要はない。
Here, for example, in the communication system shown in FIG. 2, the communication nodes 30-1 to 30-3 are assigned to the tenant A, and the broadcast path from the switch 10-1 to the switch 10-2 is set. A case where the communication node 30-4 is added to the tenant A will be considered. In this case, the broadcast route for the tenant A exists, but there is no broadcast route from the switch 10-2 to the switch 10-3. Therefore, the broadcast
テナントに通信ノード30が追加された場合は、その後、追加された通信ノード30が稼働する可能性が高い。そこで、追加された通信ノード30が稼働する前に、予めブロードキャスト経路を実現する処理規則を、スイッチ10に設定することで、ブロードキャストパケットを転送する際の遅延を抑制する。
When the communication node 30 is added to the tenant, the added communication node 30 is likely to operate thereafter. Therefore, before the added communication node 30 is operated, a processing rule for realizing a broadcast route is set in the
図14は、制御装置20の動作の一例を示すフローチャートである。図14は、リソース管理情報を書き換えることで、テナントに属する通信ノード30の停止が、制御装置20に通知された場合の動作例を示す。
FIG. 14 is a flowchart illustrating an example of the operation of the
グループと、通信ノードが指定されて通信ノードの停止が通知されると、ブロードキャスト範囲決定部28は、指定されたテナントにブロードキャスト経路が存在するか否かを判定する(ステップS241)。
When a group and a communication node are specified and a stop of the communication node is notified, the broadcast
ブロードキャスト経路が存在しなければ(ステップS241、No分岐)、ステップS244に処理を遷移する。一方、ブロードキャスト経路が存在すれば(ステップS241、Yes分岐)、ブロードキャスト範囲決定部28は、トポロジDB22を検索することで、指定された通信ノード30が接続されたスイッチ10を特定する(ステップS242)。
If the broadcast route does not exist (step S241, No branch), the process proceeds to step S244. On the other hand, if a broadcast route exists (step S241, Yes branch), the broadcast
次に、ブロードキャスト範囲決定部28は、処理規則管理部26に対して、特定されたスイッチ10から指定された通信ノード30へブロードキャストパケットを転送する処理内容を持つパケットアウト規則の削除を指示する(ステップS243)。その後、処理規則管理部26は、指定された通信ノード30に関連する処理規則(例えば、ユニキャスト経路を実現するための処理規則)を削除する(ステップS244)。
Next, the broadcast
処理規則管理部26は、制御メッセージ処理部23及びノード通信部32を介して、FlowMod(DLL)メッセージを対応するスイッチ10に送信することで、処理規則を削除する。より具体的には、マッチングフィールドにおける送信元MACアドレスに停止が通知された通信ノード30のMACアドレスを、他のカラムにはワイルドカードを、それぞれ指定し、FlowMod(DLL)メッセージを用いて処理規則を削除する。
The processing
図15は、制御装置20の動作の一例を示すフローチャートである。図15は、リソース管理情報を書き換えることで、テナントに属する通信ノード30の削除が、制御装置20に通知された場合の動作例を示す。
FIG. 15 is a flowchart illustrating an example of the operation of the
グループと、通信ノードが指定されて通信ノード30の削除が通知されると、ブロードキャスト範囲決定部28は、指定されたテナントにブロードキャスト経路が存在するか否かを判定する(ステップS251)。
When a group and a communication node are specified and deletion of the communication node 30 is notified, the broadcast
ブロードキャスト経路が存在しなければ(ステップS251、No分岐)、処理を終了する。一方、ブロードキャスト経路が存在すれば(ステップS251、Yes分岐)、ブロードキャスト範囲決定部28は、トポロジDB22を検索することで、指定された通信ノード30が接続されたスイッチ10を特定する(ステップS252)。
If there is no broadcast path (step S251, No branch), the process is terminated. On the other hand, if a broadcast route exists (step S251, Yes branch), the broadcast
その後、ブロードキャスト範囲決定部28は、前ステップにおいて特定されたスイッチ10に指定されたテナントの他の通信ノード30が接続されているか否かを判定する(ステップS253)。特定されたスイッチ10に指定されたテナントの他の通信ノード30が既に接続されている場合(ステップS253、Yes分岐)には、処理を終了する。
Thereafter, the broadcast
ステップS254において、ブロードキャスト範囲決定部28は、処理規則管理部26に対して、ステップS252で特定したスイッチ10に設定されている処理規則(ブロードキャスト転送規則及びパケットアウト規則)の削除を指示する。テナントへの通信ノード30の割り当てが終了すると、削除された通信ノード30にブロードキャストパケットを転送する必要はない。そのため、削除しても影響がないブロードキャスト経路を削除する。
In step S254, the broadcast
図16は、制御装置20の動作の一例を示すフローチャートである。図16は、リソース管理情報を書き換えることで、テナントの削除が、制御装置20に通知された場合の動作例を示す。
FIG. 16 is a flowchart illustrating an example of the operation of the
テナントが指定されて、その削除が通知されると、ブロードキャスト範囲決定部28は、指定されたテナントにブロードキャスト経路が存在するか否かを判定する(ステップS261)。ブロードキャスト経路が存在しなければ(ステップS261、No分岐)、処理を終了する。
When the tenant is designated and the deletion is notified, the broadcast
ステップS262において、ブロードキャスト範囲決定部28は、処理規則管理部26に対して、削除が通知されたテナントに関する処理規則の削除を指示する。このように、テナント自体が削除されてしまえば、当該テナントのために設けられたブロードキャスト経路は不要であるので、ブロードキャスト経路を実現する処理規則をスイッチ10から削除する。
In step S262, the broadcast
図17〜図24は、本実施形態に係る通信システムの動作の一例を示すシーケンス図である。 17 to 24 are sequence diagrams illustrating an example of the operation of the communication system according to the present embodiment.
図17は、通信ノード30−1から通信ノード30−2に向けてパケットを送信する場合の動作例を示す。 FIG. 17 shows an operation example when a packet is transmitted from the communication node 30-1 to the communication node 30-2.
図17を参照すると、初めに、通信ノード30−1は、スイッチ10−1に向けてパケット(図17のMesseageU1)を送信する。通信ノード30−1からパケットを受信したスイッチ10−1は、当該パケットを添えて制御装置20に処理規則の設定を要求する。
Referring to FIG. 17, first, the communication node 30-1 transmits a packet (Message U1 in FIG. 17) toward the switch 10-1. The switch 10-1 that has received the packet from the communication node 30-1 adds the packet and requests the
制御装置20の経路・アクション計算部24は、パケットヘッダ及びトポロジDB22が記憶するネットワークのトポロジを参照し、パケット転送経路を計算する。その後、処理規則管理部26は、計算されたパケット転送経路に応じてスイッチ10に設定する処理規則を生成する。処理規則管理部26は、生成した処理規則を、制御メッセージ処理部23及びノード通信部32を介してスイッチ10−1に設定する。より詳細には、スイッチ10−1が備えるテーブルDB13に新たなエントリを追加する(図17のFlowMod(ADD)メッセージを送信する)。
The route /
制御装置20は、処理規則をスイッチ10−1に設定した後、スイッチ10−1にパケット(MesseageU1)を返却する(パケットアウトする)。
After setting the processing rule in the switch 10-1, the
スイッチ10−1は、受信したパケットを通信ノード30−2に転送する。その後、通信ノード30−1から通信ノード30−2に向けられたパケット(図2のMesseageU2)は、スイッチ10−1に設定された処理規則に従い処理され、通信ノード30−2に転送される。 The switch 10-1 transfers the received packet to the communication node 30-2. Thereafter, the packet (Message U2 in FIG. 2) directed from the communication node 30-1 to the communication node 30-2 is processed according to the processing rule set in the switch 10-1, and transferred to the communication node 30-2.
図18は、通信ノード30−1〜30−3が同一テナントに割り当てられ、且つ、通信ノード30−1及び30−2が稼働状態にある場合において、通信ノード30−1からブロードキャストパケットが送信された場合の動作例を示す。 In FIG. 18, when the communication nodes 30-1 to 30-3 are assigned to the same tenant and the communication nodes 30-1 and 30-2 are in an operating state, a broadcast packet is transmitted from the communication node 30-1. An example of the operation is shown.
図18を参照すると、通信ノード30−1は、スイッチ10−1に向けてブロードキャストパケット(図18のMesseageB1)を送信する。 Referring to FIG. 18, the communication node 30-1 transmits a broadcast packet (Message B1 in FIG. 18) toward the switch 10-1.
通信ノード30−1からブロードキャストパケットを受信したスイッチ10−1は、当該ブロードキャストパケットを添えて制御装置20に処理規則の設定を要求する。ブロードキャスト範囲決定部28は、リソース情報DB31及びトポロジDB22を検索し、ブロードキャストパケットを転送する範囲を決定し、経路・アクション計算部24にブロードキャスト経路の計算を指示する。ここでは、スイッチ10−1及び10−2を含むブロードキャスト経路が計算される。
The switch 10-1 that has received the broadcast packet from the communication node 30-1 requests the
その後、処理規則管理部26は、計算されたブロードキャスト経路に応じてスイッチ10−1及び10−2に設定する処理規則を生成する。より具体的には、スイッチ10−1に対しては、送信元MACアドレスが通信ノード30−1のMACアドレスを持つブロードキャストパケットを、スイッチ10−2に転送することを処理内容とする処理規則を設定する(ブロードキャスト転送規則を設定する)。さらに、スイッチ10−1に対して、送信元MACアドレスが通信ノード10−1のMACアドレスを持つブロードキャストパケットを、通信ノード30−2に送出することを処理内容とする処理規則を設定する(パケットアウト規則を設定する)。
Thereafter, the processing
なお、スイッチ10−2に対しては、処理規則を設定しない。通信ノード30−3は、テナントに割り当てられているが、停止状態のためである。即ち、スイッチ10−2にパケットアウト規則を設定し、通信ノード30−3にブロードキャストパケットを転送する必要はない。 Note that no processing rule is set for the switch 10-2. The communication node 30-3 is assigned to the tenant, but is in a stopped state. That is, it is not necessary to set a packet-out rule in the switch 10-2 and transfer the broadcast packet to the communication node 30-3.
制御装置20は、処理規則をスイッチ10−1に設定した後、スイッチ10−1にブロードキャストパケット(MesseageB1)を返却する。スイッチ10−1は、設定された処理規則に従い、受信したパケットを通信ノード30−2及びスイッチ10−2に転送する。その後、通信ノード30−1から送信されたブロードキャストパケット(MesseageB2)は、スイッチ10−1に設定された処理規則に従い、通信ノード30−2及びスイッチ10−2に転送される。
After setting the processing rule in the switch 10-1, the
図19は、通信ノード30−1〜30−3が同一テナントに割り当てられ、且つ、通信ノード30−1〜30−3が稼働状態にある場合において、通信ノード30−1からブロードキャストパケットが送信された場合の動作例を示す。 In FIG. 19, when communication nodes 30-1 to 30-3 are assigned to the same tenant and the communication nodes 30-1 to 30-3 are in an operating state, a broadcast packet is transmitted from the communication node 30-1. An example of the operation is shown.
この場合には、図18に示す動作例とは異なり、スイッチ10−2に対しても、パケットアウト規則が設定される。その結果、通信ノード30−1からブロードキャストされたパケット(MesseageB1及びB2)は、スイッチ10−1及び10−2に設定された処理規則に従い処理され、通信ノード30−2及び通信ノード30−3に転送される。 In this case, unlike the operation example shown in FIG. 18, a packet-out rule is set for the switch 10-2. As a result, the packets (Message B1 and B2) broadcast from the communication node 30-1 are processed according to the processing rules set in the switches 10-1 and 10-2, and are transmitted to the communication node 30-2 and the communication node 30-3. Transferred.
図20は、通信ノード30−1〜30−3が同一テナントに割り当てられ、且つ、通信ノード30−1及び30−2が稼働状態にて既にブロードキャスト経路が設定されている場合において、通信ノード30−3が稼働状態に遷移する場合の動作例を示す。 FIG. 20 shows a case where the communication nodes 30-1 to 30-3 are assigned to the same tenant, and the communication nodes 30-1 and 30-2 are already in operation and the broadcast path is already set, the communication node 30 An example of operation when -3 transitions to the operating state is shown.
図18の動作例では、スイッチ10−2に対してパケットアウト規則を設定していない。その理由は、上述のように、テナントに割り当てられた通信ノード30は停止状態のためである。図20の動作例は、図18の状況から通信ノード30−3が稼働状態に遷移する場合の動作例である。 In the operation example of FIG. 18, no packet out rule is set for the switch 10-2. The reason is that the communication node 30 assigned to the tenant is in a stopped state as described above. The operation example of FIG. 20 is an operation example in the case where the communication node 30-3 transitions to the operating state from the situation of FIG.
図20を参照すると、通信ノード30−3が稼働状態に遷移する場合には、制御装置20が、パケットアウト規則をスイッチ10−2に追加設定する。なお、スイッチ10−1からスイッチ10−2に向けたブロードキャスト経路を実現する処理規則はスイッチ10−1に設定されているため、ブロードキャスト転送規則を設定する必要はない。即ち、スイッチ10−2に設定する処理規則に関し、通信ノード30−1からのブロードキャストパケットを通信ノード30−3に転送する処理規則を追加すれば足りる。
Referring to FIG. 20, when the communication node 30-3 transitions to an operating state, the
その後、制御装置20は、通信ノード30−3に対して、稼働状態への遷移を指示する。通信ノード30−3が稼働状態に遷移した後は、通信ノード30−1が送信するブロードキャストパケットは、スイッチ10−1及び10−2を介して通信ノード30−2及び30−3に転送される。
Thereafter, the
図21は、通信ノード30−1〜30−3が同一テナントに割り当てられ、且つ、通信ノード30−1〜30−3が稼働状態にて既にブロードキャスト経路が設定されている場合において、通信ノード30−2が停止状態に遷移する場合の動作例を示す。 FIG. 21 shows the case where the communication nodes 30-1 to 30-3 are assigned to the same tenant, and the communication nodes 30-1 to 30-3 are already in the operating state and the broadcast path is already set. -2 shows an operation example when transitioning to a stopped state.
この場合、既にスイッチ10−1には、通信ノード30−1から送信されたブロードキャストパケットを通信ノード30−2に送出することを処理内容とする処理規則(パケットアウト規則)が設定されている。そこで、制御装置20は、スイッチ10−1に設定されているパケットアウト規則を削除する。その後、制御装置20は、通信ノード30−2に対して、停止状態への遷移を指示する。なお、図21の動作例では、スイッチ10−1に設定されているブロードキャスト転送規則(スイッチ10−1からスイッチ10−2にブロードキャストパケットを転送するための処理規則)を削除しない。スイッチ10−2は、ブロードキャストパケットを通信ノード30−3に転送する必要があるためである。
In this case, a processing rule (packet-out rule) whose processing content is to send a broadcast packet transmitted from the communication node 30-1 to the communication node 30-2 has already been set in the switch 10-1. Therefore, the
図22は、通信ノード30−1〜30−3が同一テナントに割り当てられ、且つ、通信ノード30−1〜30−3が稼働状態にて既にブロードキャスト経路が設定されている場合において、テナントを削除する場合の動作例を示す。 FIG. 22 shows that the tenant is deleted when the communication nodes 30-1 to 30-3 are assigned to the same tenant, and the communication nodes 30-1 to 30-3 are already in operation and the broadcast route is already set. An example of the operation is shown.
この場合、制御装置20は、スイッチ10−1及び10−2に設定された処理規則(ブロードキャスト転送規則及びパケットアウト規則)を削除する。その後、制御装置20は、削除するテナントに割り当てられた通信ノード30−1〜30−3を停止状態に遷移させる。
In this case, the
図23は、通信ノード30−1及び30−2が同一テナントに割り当てられ、且つ、通信ノード30−1及び30−2が稼働状態にて既にブロードキャスト経路が設定されている場合において、テナントに通信ノード30−3を追加する場合の動作例を示す。 FIG. 23 shows communication to a tenant when communication nodes 30-1 and 30-2 are assigned to the same tenant and the communication nodes 30-1 and 30-2 are already in operation and a broadcast path is already set. An operation example in the case of adding the node 30-3 is shown.
この場合には、制御装置20は、スイッチ10−1に対し、通信ノード30−1が送信するブロードキャストパケットを、スイッチ10−2に転送する処理規則(ブロードキャスト転送規則)を設定する。その後、通信ノード30−1が送信するブロードキャストパケット(図23のMessageB3)は、通信ノード30−2及びスイッチ10−2に転送される。なお、図23の動作例では、テナントに通信ノード30を追加するに留まっており、通信ノード30−3の稼働は指示されていないので、スイッチ10−2に対し、パケットアウト規則を設定しない。
In this case, the
図24は、通信ノード30−1〜30−3が同一テナントに割り当てられ、且つ、通信ノード30−1及び30−2が稼働状態にて既にブロードキャスト経路が設定されている場合において、テナントから通信ノード30−3を削除する場合の動作例を示す。 FIG. 24 shows communication from the tenant when the communication nodes 30-1 to 30-3 are assigned to the same tenant and the communication nodes 30-1 and 30-2 are already operating and the broadcast path is already set. An operation example in the case of deleting the node 30-3 is shown.
この場合、制御装置20は、スイッチ10−1に設定されている処理規則であって、通信ノード30−1から送信されたブロードキャストパケットをスイッチ10−2に転送する処理規則(ブロードキャスト転送規則)を削除する。さらに、制御装置20は、スイッチ10−2に設定されているパケットアウト規則も削除する。その後、通信ノード30−1が送信するブロードキャストパケット(図24のMessageB3)は、通信ノード30−2に限り転送される。
In this case, the
以上のように、本実施形態に係る制御装置20は、リソース(通信ノード30)のテナントへの割り当て及び動作状態を考慮して、ブロードキャスト範囲を決定し、スイッチ10に設定する処理規則を生成する。その結果、ブロードキャストパケットは、同一のグループ(テナント)に属する通信ノード30に限り転送されることになり、ネットワークの安全性が向上する。
As described above, the
また、特許文献1が開示する技術は、特定のドメイン(サブネット)に、レイヤ2やレイヤ3に依存しない閉じたネットワークに適用するのが前提である。一方、本実施形態に係る通信システムでは、1つのドメイン(レイヤ2サブネット)に、レイヤ2やレイヤ3に依存しないネットワークを生成している。即ち、フローベーススイッチで形成されたネットワークに、複数のレイヤ2サブネットからなるテナントを複数包含させ、且つ、各テナントを独立させ、テナントに関連しないスイッチにはブロードキャストパケットを転送しない。
The technique disclosed in
また、制御装置20は、通信ノード30の動作状態を考慮し、将来、稼働する可能性のある通信ノード30装置が接続されるスイッチ10には、ブロードキャストパケットが転送されるように、処理規則を予め設定しておく。その結果、停止状態にある通信ノード30が稼働状態に遷移し、ブロードキャストパケットを転送する必要が生じた場合でも、低遅延でブロードキャストパケットを転送できる。
In addition, the
[第2の実施形態]
続いて、第2の実施形態について図面を参照して詳細に説明する。
[Second Embodiment]
Next, a second embodiment will be described in detail with reference to the drawings.
図25は、第2の実施形態に係る通信システムの一例を示す図である。図25において図2と同一構成要素には、同一の符号を付し、その説明を省略する。図2と図25の相違点は、制御装置20aの動作と、管理装置40が追加されている点である。
FIG. 25 is a diagram illustrating an example of a communication system according to the second embodiment. In FIG. 25, the same constituent elements as those in FIG. The difference between FIG. 2 and FIG. 25 is that the operation of the
第2の実施形態に係る通信システムでは、管理装置40が、第1の実施形態において説明したリソース管理情報を取り扱う。より具体的には、管理装置40は、通信システムの管理者等が入力するテナント管理情報に基づき、テナントの追加及び削除、テナントへのリソースの追加及び削除、テナントに割り当てられているリソースの稼働及び停止、を管理する。即ち、テナント管理情報とは、テナントの追加等を明示する情報であって、管理装置40の外部から入力される情報である。管理装置40は、テナント管理情報の変更を認識すると、通信システムの運用状況が変更となったものとして、制御装置20aに対し、リソース管理情報変更通知を行う。リソース管理情報変更通知を受信した制御装置20aは、当該通知に応じて、ブロードキャスト経路の有無等を判定し、適宜、スイッチ10に処理規則を設定する。
In the communication system according to the second embodiment, the
また、制御装置20aは、ブロードキャスト範囲を決定する際に、管理装置40に対して、リソース管理情報提供要求を行う。このリソース管理情報提供要求は、第1の実施形態において説明したリソース管理情報の提供を管理装置40に要求するものである。制御装置20aは、リソース管理情報提供要求に対する応答に基づいて、ブロードキャスト範囲を決定する。
Further, when determining the broadcast range, the
管理装置40は、通信ノード30−1〜30−5の管理を行う装置である。具体的には、通信システムへのテナントの追加と削除、テナントへのリソースの追加と削除、リソースの稼働と停止を管理する。
The
図26は、制御装置20aの内部構成の一例を示す図である。図26において図6と同一構成要素には、同一の符号を付し、その説明を省略する。制御装置20と制御装置20aとの相違点は、リソース情報DB31が存在しない点と、ブロードキャスト範囲決定部28a及び構成変更処理部29aの動作が、それぞれ、ブロードキャスト範囲決定部28及び構成変更処理部29と異なる点である。
FIG. 26 is a diagram illustrating an example of an internal configuration of the
ブロードキャスト範囲決定部28aは、リソース情報DB31を検索することに代えて、管理装置40にリソース管理情報提供要求を行う。ブロードキャスト範囲決定部28aは、管理装置40からの応答に基づいて、ブロードキャストパケットの転送範囲を定める。より具体的には、ブロードキャスト範囲決定部28aは、第1の実施形態におけるリソース管理情報に相当する情報が必要となる場合に、管理装置40に対してリソース管理情報提供要求を行う。その後、管理装置40からのリソース管理情報提供要求に対する応答に基づき、ブロードキャスト範囲を決定する。また、ブロードキャスト範囲決定部28aは、上述のリソース管理情報変更通知を受信した場合に、必要に応じて、スイッチ10に処理規則(ブロードキャスト転送規則及びパケットアウト規則)を設定する。さらに、ブロードキャスト範囲決定部28aは、リソース管理情報変更通知に応答することで、スイッチ10に処理規則を設定した旨を管理装置40に通知する。
The broadcast
構成変更処理部29aは、リソース管理情報変更通知に基づいて、トポロジDB22の更新を行う。なお、第1の実施形態に係る制御装置20は、構成変更処理部29を使用して通信ノード30の動作状態を管理する。第2の実施形態においては、管理装置40が、通信ノード30の制御し、管理する。そのため、制御装置20aの構成変更処理部29aは、通信ノード30の動作状態を制御する機能を有さない。
The configuration
図27は、管理装置40の内部構成の一例を示す図である。管理装置40は、リソース変更処理部41と、リソース管理部42と、リソースデータベース(リソースDB)43と、割り当て計画部44と、割り当てリソースデータベース(割り当てリソースDB)45と、稼働リソース決定部46と、テナントリソースデータベース(テナントリソースDB)47と、解放処理実行部48と、制御装置20a、通信ノード30及び端末(図25において図示せず)との通信を行う通信部49と、を含んで構成される。
FIG. 27 is a diagram illustrating an example of the internal configuration of the
リソース変更処理部41は、通信部49を介して、外部よりテナント管理情報を受け付ける。より具体的には、通信システムの管理者は、図25に図示しない端末等を用いてテナント管理情報を管理装置40に入力する。リソース変更処理部41は、テナント管理情報に応じた処理(例えば、テナントに割り当てるリソースの追加等)を実行した後、通信部49を介して、テナント管理情報に対する応答を行う。例えば、テナント管理情報が、テナントへのリソースの追加に係る要求の場合には、リソース変更処理部41は当該要求を正常に処理したか否かを応答する。
The resource
リソース変更処理部41は、テナント管理情報に従い、テナントの追加と削除、各テナントへのリソースの追加と削除、テナントに割り当てたリソースの稼働と停止、を制御する。より具体的には、リソース変更処理部41は、割り当て計画部44、稼働リソース決定部46又は解放処理実行部48のいずれかに対し、リソースの追加や削除等を指示する。また、リソース変更処理部41は、テナント管理情報と各部(割り当て計画部44等)に行った指示に対する応答に基づき、制御装置20aに対し、リソース管理情報変更通知を行う。
The resource
さらに、リソース変更処理部41は、テナント管理情報と制御装置20aから応答に応じて、リソース管理部42に対し、リソースの稼働又は停止に係る指示を行う。
Further, the resource
さらにまた、リソース変更処理部41は、通信部49を介して、制御装置20aからリソース管理情報提供要求を受信した場合には、各種のデータベースを検索し、リソースの割り当て状況や稼働状態を制御装置20aに応答する。
Furthermore, when the resource
リソース管理部42は、各テナントに割り当てられたリソースを制御し、管理する手段である。リソース管理部42は、リソース変更処理部41からの指示に基づき、通信ノード30の動作状態を制御し、管理する。より具体的には、リソース管理部42は、通信ノード30に対して制御メッセージを送信し、通信ノード30の動作状態を変更する。リソース管理部42は、通信ノード30の動作状態を変更した後、リソース変更処理部41に通信ノード30の制御が終了した旨を応答する。
The resource management unit 42 is means for controlling and managing resources allocated to each tenant. The resource management unit 42 controls and manages the operation state of the communication node 30 based on an instruction from the resource
リソースDB43は、通信システム全体に含まれる通信ノード30(システムのリソース)に関する情報を記憶するデータベースである。
The
図28は、リソースDB43のエントリの一例を示す図である。リソースDB43のエントリは、通信システム全体に含まれるリソースを一意に識別するためのIDを格納するリソースIDフィールドと、リソースの種別(例えば、計算機、仮想マシン等)を示すリソース種別フィールドと、当該リソースが既にテナントに割り当てられているか否かを示す割り当てフラグと、その他リソースの属性を示すリソース属性フィールドと、を含んでいる。なお、リソースの属性には、当該リソースのMACアドレスが含まれる。リソースの属性にMACアドレスを含ませることにより、管理装置40から制御装置20aにリソースの稼働等を通知する際に、MACアドレスの検索を省略できる。あるいは、リソースを識別するためのIDとしてMACアドレスを使用してもよい。
FIG. 28 is a diagram illustrating an example of entries in the
リソースDB43のエントリは、通信システム全体に含まれるリソースが変更(リソースの追加又は削除)されることに応じて、更新される。
The entry in the
割り当て計画部44は、リソース変更処理部41の指示に従い、テナントに割り当てるリソースを決定する手段である。割り当て計画部44は、指定されたテナントにリソースの割り当てが行えたか否かを、リソース変更処理部41に応答する。割り当て計画部44は、リソースDB43を検索し、テナントに割り当てるリソースが存在する判断すれば、当該リソースに関する情報を割り当てリソースDB45に登録する。なお、以降の説明において、割り当て計画部44が実行する処理を、リソース割り当て計画と表記する。
The
割り当てリソースDB45は、割り当て計画部44がテナントに割り当てたリソースを記憶するデータベースである。
The
図29は、割り当てリソースDB45のエントリの一例を示す図である。割り当てリソースDB45のエントリは、リソースの割り当て先のテナントを示すテナントIDフィールドと、割り当てられたリソースに関する情報を示すリソース情報フィールドと、を含んでいる。なお、リソース情報フィールドには、リソースを識別するリソースIDと、当該リソースの動作状態(稼働状態又は停止状態)を示す動作状態フラグと、が格納される。例えば、テナントにリソースが割り当てられていたとしても、当該リソースが停止状態にあれば、当該リソースに対応する動作状態フラグは、「偽(停止状態)」とする。
FIG. 29 is a diagram illustrating an example of entries in the
稼働リソース決定部46は、リソース変更処理部41の指示に従い、テナントに割り当てられているリソースの中から稼働させるリソースを決定する手段である。その際、リソース変更処理部41は、稼働リソース決定部46に対し、テナントと稼働させるリソースの数が指定する。稼働リソース決定部46は、指定された数のリソースを稼働させることが行えたか否かをリソース変更処理部41に応答する。稼働リソース決定部46は、割り当てリソースDB45を検索し、指定されたテナントに割り当てられたリソースの中から稼働させるリソースを決定する。稼働リソース決定部46は、稼働させるリソースを決定した後、当該リソースをテナントリソースDB47に登録する。
The operating
テナントリソースDB47は、テナントに属するリソースであって、稼働中のリソースを記憶するデータベースである。
The
図30は、テナントリソースDB47のエントリの一例を示す図である。テナントリソースDB47のエントリは、テナントを示すテナントIDフィールドと、当該テナントに割り当てられ、且つ、稼働しているリソースを示す複数のリソースIDフィールドと、を含む。
FIG. 30 is a diagram illustrating an example of entries in the
解放処理実行部48は、リソース変更処理部41の指示に従い、テナントに割り当てられているリソースであって、稼働中のリソースを停止する手段である。その際、リソース変更処理部41は、解放処理実行部48に対し、テナントと停止させるリソースの数を指定する。また、解放処理実行部48は、テナントの削除に係る指示を受けると、当該テナントに割り当て済みのリソースを未割り当てとする手段でもある。なお、以降の説明において、解放処理実行部48が実行する処理であって、稼働中のリソースを停止する処理を、リソース解放計画と表記する。
The release
なお、図26、図27に示した制御装置20a、管理装置40の各部(処理手段)は、これらの装置を構成するコンピュータに、そのハードウェアを用いて、後述する各処理を実行させるコンピュータプログラムにより実現することもできる。
Note that each unit (processing unit) of the
次に、制御装置20aの動作について説明する。
Next, the operation of the
なお、制御装置20aがスイッチ10からパケットを受け取った際の動作は、図10を用いて説明した動作と相違する点は存在しないので、さらなる説明を省略する。
The operation when the
図31は、制御装置20aの動作の一例を示すフローチャートである。図31は、図11を用いて説明した動作に相当する動作例を示す。図11と図31の相違点は、ステップS207aに係る処理である。
FIG. 31 is a flowchart illustrating an example of the operation of the
ステップS207aにおいて、ブロードキャスト範囲決定部28aは、受信したブロードキャストパケットを転送するスイッチ10及びその接続ポートを決定する(ブロードキャスト範囲を決定する)。ブロードキャスト範囲決定部28aは、ブロードキャスト範囲の決定に必要なリソース管理情報の提供を、管理装置40に要求する。ブロードキャスト範囲決定部28aは、管理装置40から得られる情報に基づいて、ブロードキャスト範囲を決定する。
In step S207a, the broadcast
図32は、ブロードキャスト範囲決定部28aの動作の一例を示すフローチャートである。
FIG. 32 is a flowchart showing an example of the operation of the broadcast
ステップS2071において、ブロードキャスト範囲決定部28aは、管理装置40に対して、ブロードキャストパケットを送信する通信ノード30が属するテナントを指定して、当該テナントに関するリソース管理情報提供要求を行い、その応答を待つ(ステップS2072)。
In step S2071, the broadcast
ブロードキャスト範囲決定部28aは、リソース管理情報提供要求に対する応答とトポロジDB22が記憶するネットワークのトポロジと、からブロードキャストパケットの転送に使用するスイッチ10を特定する(ステップS2073)。その後、ブロードキャスト範囲決定部28aは、テナントに割り当てられた通信ノード30(リソース)が接続されたスイッチ10とそのポートを、トポロジDB22を検索することで、特定する(ステップS2074)。本ステップで特定するスイッチ10及びその接続ポートが、ブロードキャスト範囲に相当する。なお、ステップS2072における管理装置40側の動作は、後述する。
The broadcast
図33〜図37は、それぞれ、図12〜図16に相当する制御装置20aの動作の一例を示すフローチャートである。図33〜図37において、図12〜図16と同一の処理に関しては、同一のステップ名を与え、説明を省略する。対応する図面間の相違点は、各図に示す処理を終了する直前に、管理装置40に対して応答する点である。
33 to 37 are flowcharts showing an example of the operation of the
管理装置40は、通信システムの運用状況の変化(テナント管理情報の変化;即ち、テナントの追加と削除、テナントへのリソースの追加と削除、リソースの稼働と停止)に応じて、変化した内容を制御装置20aに通知する(リソース管理情報変更通知を行う)。制御装置20aでは、管理装置40からの通知に従い、適切な処理(例えば、ブロードキャスト転送規則の設定等)を行い、当該処理が終了した旨を管理装置40に応答する。応答を受けた管理装置40は、必要に応じて、リソース(通信ノード30)の制御及び管理を行う。
The
図33を例に取り、上記図面間の相違点を説明する。図33は、管理装置40から、テナントに割り当てられている通信ノード30の稼働が通知された場合の制御装置20aの動作例を示す。この場合、制御装置20aは、ステップS221〜S224に係る処理を実行することで、稼働が通知された通信ノード30に対してブロードキャストパケットが転送されるように動作する。より具体的には、制御装置20aは、スイッチ10にパケットアウト規則を設定する。
Taking FIG. 33 as an example, differences between the drawings will be described. FIG. 33 shows an operation example of the
その後、ステップS225において、制御装置20aは、管理装置40に対して、稼働が通知された通信ノード30に対するブロードキャストパケットを転送する準備が完了した旨を応答する。応答を受けた管理装置40のリソース管理部42は、通信ノード30に制御メッセージを送信し、通信ノード30を稼働状態に遷移させる。その際、既に、スイッチ10にはブロードキャストパケットを転送するための処理規則(ブロードキャスト転送規則及びパケットアウト規則)が設定されているため、稼働を開始した通信ノード30にブロードキャストパケットが転送される。
Thereafter, in step S225, the
次に、管理装置40の動作について説明する。
Next, the operation of the
図38〜図44は、管理装置40の動作の一例を示すフローチャートである。
38 to 44 are flowcharts illustrating an example of the operation of the
図38は、テナントを登録する際の管理装置40の動作例を示す。
FIG. 38 shows an operation example of the
管理装置40にテナントを登録する際は、テナントIDと、当該テナントに割り当てるリソースの数(最大値)が、テナント管理情報により指定される。リソース変更処理部41は、このようなテナント管理情報を受け付けると、割り当て計画部44に、リソース割り当て計画を実行させる(ステップS401)。より具体的には、割り当て計画部44は、リソースDB43に登録されているリソース(通信システム全体に含まれるリソース)から、テナントに割り当てるリソースを決定する。割り当て計画部44は、要求されたリソースを割り当てることができるか否かを判定する(ステップS402)。
When a tenant is registered in the
例えば、リソースDB43に登録されているリソースであって、未割り当てのリソースの数が、割り当てを要求されたリソースの数に満たないなどの理由により、テナントにリソースの割り当てができなければ(ステップS402、No分岐)、ステップS403に係る処理が実行される。テナントにリソースの割り当てができれば(ステップS402、Yes分岐)、ステップS404及び405に係る処理が実行される。
For example, if a resource is registered in the
ステップS403において、割り当て計画部44は、リソース変更処理部41に対して、リソースを割り当てることができない旨を応答する。リソース変更処理部41は、通信部49を介して、テナントの登録ができない旨を応答する(例えば、テナント管理情報を入力する端末にリソース割り当て不可を応答する)。
In step S403, the
ステップS404において、割り当て計画部44は、リソースDB43のエントリの中のステップS401で決定したリソースに対応する割り当てフラグを、「割り当て済み」に変更する。その後、割り当て計画部44は、割り当てリソースDB45のテナントIDフィールドと、リソース情報フィールドを、テナントに割り当てたリソースに基づいて更新する(ステップS405)。
In step S404, the
なお、ステップS401において、割り当て計画部44が実行するリソース割り当て計画には種々の方法が考えられる。例えば、指定されたリソースの数だけランダムに確保する方法、ネットワークの距離を考慮し同一のスイッチ10に接続されたリソース単位で割り当てる方法、ネットワークのホップ数が少ないリソースを選択して選ぶ方法、ラック単位で割り当てる方法、可用性を考慮し2つ以上のラックに分けて割り当てる方法、等が考えられる。割り当て計画部44は、いずれの方法を、又は、上記以外の方法を用いて、テナントに割り当てるリソースを決定する。
In step S401, various methods are conceivable for the resource allocation plan executed by the
図39は、リソースを稼働する際の管理装置40の動作例を示す。リソースの稼働は、テナントとジョブが指定されることで行われる。
FIG. 39 shows an operation example of the
リソース変更処理部41は、稼働リソース決定部46に対し、テナント及びジョブ(リソースが提供するサービス)を指定して、稼働するリソースの決定を指示する。
The resource
稼働リソース決定部46は、割り当てリソースDB45を検索し、指定されたテナントに動作状態フラグが「偽」(リソースは停止状態)のリソースが存在するか否かを確認する(ステップS411)。
The operating
テナントに割り当てられたリソースであって、停止状態のリソースが存在しなければ(ステップS411、No分岐)、ステップS412に係る処理が実行される。一方、停止状態のリソースが存在すれば(ステップS411、Yes分岐)、ステップS413〜S418に係る処理が実行される。 If there is no resource that is allocated to the tenant and is in a stopped state (step S411, No branch), the processing according to step S412 is executed. On the other hand, if there is a stopped resource (step S411, Yes branch), the processing according to steps S413 to S418 is executed.
ステップS412において、稼働リソース決定部46は、リソース変更処理部41に対して、停止状態のリソースが存在しないため、指定されたテナントにおけるリソースの稼働は不可であると通知し、処理を終了する。リソース変更処理部41は、通信部49を介して、リソースの稼働ができない旨を応答する。
In step S412, the operation
ステップS413において、稼働リソース決定部46は、指定されたテナントの動作状態フラグが「偽」のリソースから、稼働するリソースを選択する。
In step S413, the operating
次に、稼働リソース決定部46は、前ステップで決定したリソースに対応した割り当てリソースDB45の動作状態フラグを「真」(リソースは稼働状態)に変更する(ステップS414)。また、稼働リソース決定部46は、テナントリソースDB47のエントリに、該当リソースのリソースIDを追加する(ステップS415)。
Next, the operating
稼働リソース決定部46は、テナントIDと稼働するリソースのMACアドレスを、リソース変更処理部41に応答する。応答を受けたリソース変更処理部41は、制御装置20aに対して、テナントIDと稼働するリソースのMACアドレスを含むリソース管理情報変更通知を行う(ステップS416)。その後、リソース変更処理部41は、制御装置20aからの応答を待ち(ステップS417)、リソース管理部42に対し、ステップS413で決定したリソースの稼働を指示する(ステップS418)。
The operating
図40は、リソースを停止する際の管理装置40の動作例を示す。リソースの停止は、テナントと停止するリソースが指定されることで行われる。
FIG. 40 shows an operation example of the
リソース変更処理部41は、制御装置20aに対し、テナントと停止するリソースを含むリソース管理情報変更通知を行う(ステップS421)。その後、リソース変更処理部41は、制御装置20aからの応答を待ち(ステップS422)、応答を受け取り次第、リソース管理部42に対し、停止すべきリソースの停止を指示する(ステップS423)。リソース管理部42は、停止すべきリソースに制御メッセージを送信し、停止状態への遷移を指示する。
The resource
リソース管理部42は、リソースが停止するまで待機(ステップS424)し、その後、リソースの状態変化が終了した旨をリソース変更処理部41に応答する。
The resource management unit 42 waits until the resource stops (step S424), and then responds to the resource
応答を受けたリソース変更処理部41は、解放処理実行部48に対し、指定されたテナントの指定されたリソースを削除する指示を行う(ステップS425)。解放処理実行部48は、テナントリソースDB47のエントリから、指定されたテナントの指定されたリソースを削除する。その後、解放処理実行部48は、割り当てリソースDB45のエントリであって、指定されたリソースに対応するリソース情報フィールドの動作状態フラグを停止状態に変更する(ステップS426)。
Receiving the response, the resource
図41は、テナントにリソースを追加する際の管理装置40の動作例を示す。テナントと追加するリソース数を指定することで、リソースの追加が行われる。
FIG. 41 shows an operation example of the
リソース変更処理部41は、テナントと、追加するリソース数を指定し、割り当て計画部44に対し、リソースの追加を指示する。指示を受けた割り当て計画部44は、指示された数のリソースを、リソースDB43のエントリの中から選択する。その際、割り当て計画部44は、割り当てフラグが「未割り当て」のリソースを選択することで、リソースの追加指示に対応する(ステップS431)。割り当て計画部44は、要求されたリソースを割り当てることができるか否かを判定する(ステップS432)。
The resource
指定された数のリソースが割り当てることができない場合(ステップS432、No分岐)、ステップS433に係る処理が実行される。一方、指定された数のサーバが割り当て可能の場合(ステップS432、Yes分岐)、ステップS434〜S437に係る処理が実行される。 When the specified number of resources cannot be allocated (step S432, No branch), the process according to step S433 is executed. On the other hand, when the designated number of servers can be assigned (step S432, Yes branch), the processing according to steps S434 to S437 is executed.
ステップS433において、割り当て計画部44は、リソース変更処理部41に対し、指定されたテナントにリソースの追加は不可である旨を応答する。リソース変更処理部41は、通信部49を介して、リソースの追加ができない旨を応答する。
In step S433, the
ステップS434において、割り当て計画部44は、ステップS431で決定したリソースに対応する割り当てフラグを「割り当て済み」に変更する(リソースDB43を変更する)。その後、割り当て計画部44は、割り当てたリソースを、割り当てリソースDB45のテナントIDフィールドと、リソース情報フィールドに格納する(割り当てリソースDB45に登録;ステップS435)。
In step S434, the
次に、割り当て計画部44は、リソース変更処理部41に対し、テナントIDと追加するリソースのMACアドレスを応答する。リソース変更処理部41は、テナントIDと追加するリソースのMACアドレスを含むリソース管理情報変更通知を、制御装置20aに行う(ステップS436)。その後、リソース変更処理部41は、制御装置20aからの応答を待つ(ステップS437)。
Next, the
図42は、テナントからリソースを削除する際の管理装置40の動作例を示す。
FIG. 42 shows an operation example of the
リソース変更処理部41は、テナントを指定し、解放処理実行部48にリソースの削除を指示する(ステップS441)。解放処理実行部48は、リソース解放計画を実行し、指定されたテナントに対応する割り当てリソースDB45の中から、削除するリソースをから選択する。なお、本ステップにおいて、解放処理実行部48は、停止状態のサーバを削除対象として選択する。解放処理実行部48は、選択したリソースをリソース変更処理部41に応答する。
The resource
リソース変更処理部41は、テナントと前ステップで決定したリソースを指定し、制御装置20aにリソース管理情報変更通知を行う(ステップS442)。その後、リソース変更処理部41は、制御装置20aからの応答を待つ(ステップS443)。応答を受信したリソース変更処理部41は、解放処理実行部48に対し、割り当てリソースDB45から、ステップS441で決定したリソースに関するリソース情報の削除を指示する(ステップS444)。
The resource
次に、解放処理実行部48は、ステップS441において決定したリソースに該当するリソースの割り当てフラグを「未割り当て」に変更する(リソースDB43の変更;ステップS445)。
Next, the release
図43は、テナントを削除する際の管理装置40の動作例を示す。
FIG. 43 shows an operation example of the
ステップS451において、リソース変更処理部41は、制御装置20aに対し、削除するテナントを含むリソース管理情報変更通知を行う。その後、リソース変更処理部41は、制御装置20aからの応答を待つ(ステップS452)。応答を受信したリソース変更処理部41は、解放処理実行部48に対して、指定されたテナントのリソースを削除する指示を行う(ステップS453)。その際、解放処理実行部48は、割り当てリソースDB45のエントリであって、指定されたテナントに関するエントリを削除する。
In step S451, the resource
さらに、解放処理実行部48は、前ステップで解放したエントリに登録されていたリソースに対応するリソースDB43の割り当てフラグを「未割り当て」に変更する(ステップS454)。
Further, the release
図44は、制御装置20aからリソース管理情報提供要求を受けた場合の管理装置40の動作例を示す。
FIG. 44 shows an operation example of the
ステップS461において、リソース変更処理部41は、割り当てリソースDB45から、指定されたテナントのエントリを検索し、そのエントリに含まれるリソースの動作状態フラグを確認する。その後、リソース変更処理部41は、前ステップで確認したリソースについて、その動作状態を制御装置20aに応答する。なお、リソース管理情報提供要求に対する応答には、指定されたテナントに割り当てられているリソース(通信ノード30)のMACアドレスが含まれる。
In step S461, the resource
図45〜図52は、本実施形態に係る通信システムの動作の一例を示すシーケンス図である。図45〜図52は、それぞれ、図17〜図24に相当する通信システムの動作の一例を示すシーケンス図である。そのため、図45〜図52において、図17〜図24に関する説明は省略する。 45 to 52 are sequence diagrams illustrating an example of the operation of the communication system according to the present embodiment. 45 to 52 are sequence diagrams illustrating examples of operations of the communication system corresponding to FIGS. 17 to 24, respectively. Therefore, in FIG. 45 to FIG. 52, description regarding FIG. 17 to FIG. 24 is omitted.
図45は、通信ノード30−1から通信ノード30−2に向けてパケットを送信する場合の動作例を示す。この場合、通信システムの動作は、スイッチ10、制御装置20及び通信ノード30により完結するので、図17における動作例と相違する点はない。
FIG. 45 shows an operation example when a packet is transmitted from the communication node 30-1 to the communication node 30-2. In this case, since the operation of the communication system is completed by the
図46は、通信ノード30−1〜30−3が同一テナントに割り当てられ、且つ、通信ノード30−1及び30−2が稼働状態にある場合において、通信ノード30−1からブロードキャストパケットが送信された場合の動作例を示す。 In FIG. 46, when the communication nodes 30-1 to 30-3 are assigned to the same tenant and the communication nodes 30-1 and 30-2 are in an operating state, a broadcast packet is transmitted from the communication node 30-1. An example of the operation is shown.
この場合、スイッチ10−1からブロードキャストパケットが転送された制御装置20aは、ブロードキャスト範囲を決定するため、管理装置40にリソース管理情報提供要求を行う。その後、管理装置40からの応答に応じて、ブロードキャスト範囲を決定し、スイッチ10−1に処理規則を設定する。
In this case, the
図47は、通信ノード30−1〜30−3が同一テナントに割り当てられ、且つ、通信ノード30−1〜30−3が稼働状態にある場合において、通信ノード30−1からブロードキャストパケットが送信された場合の動作例を示す。 In FIG. 47, when the communication nodes 30-1 to 30-3 are assigned to the same tenant and the communication nodes 30-1 to 30-3 are in an operating state, a broadcast packet is transmitted from the communication node 30-1. An example of the operation is shown.
この場合も、制御装置20aは、管理装置40からの応答に基づき、ブロードキャスト範囲を決定する。
Also in this case, the
図48は、通信ノード30−1〜30−3が同一テナントに割り当てられ、且つ、通信ノード30−1及び30−2が稼働状態にて既にブロードキャスト経路が設定されている場合において、通信ノード30−3が稼働状態に遷移する場合の動作例を示す。 48 shows a case where the communication nodes 30-1 to 30-3 are assigned to the same tenant, and the communication nodes 30-1 and 30-2 are already operating and the broadcast path is already set, the communication node 30 An example of operation when -3 transitions to the operating state is shown.
この場合には、管理装置40は、制御装置20aに対し、テナントを指定し、リソースの稼働を示すリソース管理情報変更通知を行う。制御装置20aは、当該通知に従い、スイッチ10−2にパケットアウト規則を設定する。その後、管理装置40は、制御装置20aの応答を待って、通信ノード30−3を稼働状態に遷移させる。
In this case, the
図49は、通信ノード30−1〜30−3が同一テナントに割り当てられ、且つ、通信ノード30−1〜30−3が稼働状態にて既にブロードキャスト経路が設定されている場合において、通信ノード30−2が停止状態に遷移する場合の動作例を示す。 49 shows a case where the communication nodes 30-1 to 30-3 are assigned to the same tenant, and the communication nodes 30-1 to 30-3 are already in operation and the broadcast path is already set. -2 shows an operation example when transitioning to a stopped state.
この場合には、管理装置40は、制御装置20aに対し、リソースの停止を通知する。リソースの停止の通知を受信した制御装置20aは、スイッチ10−1に設定されたパケットアウト規則を削除する。その後、管理装置40は、通信ノード30−2を停止状態に遷移させる。
In this case, the
図50は、通信ノード30−1〜30−3が同一テナントに割り当てられ、且つ、通信ノード30−1〜30−3が稼働状態にて既にブロードキャスト経路が設定されている場合において、テナントを削除する場合の動作例を示す。 FIG. 50 shows that the tenant is deleted when the communication nodes 30-1 to 30-3 are assigned to the same tenant and the communication nodes 30-1 to 30-3 are already in operation and the broadcast path is already set. An example of the operation is shown.
この場合には、管理装置40は、制御装置20aに対し、テナントを指定してテナントの削除を通知する。テナントの削除通知に係るリソース管理情報変更通知を受信した制御装置20aは、スイッチ10−1及び10−2に設定された処理規則を削除する。制御装置20aから処理規則の削除が完了した旨の応答を受けた管理装置40は、通信ノード30−1〜30−3を停止状態に遷移させる。
In this case, the
図51は、通信ノード30−1及び30−2が同一テナントに割り当てられ、且つ、通信ノード30−1及び30−2が稼働状態にて既にブロードキャスト経路が設定されている場合において、テナントに通信ノード30−3を追加する場合の動作例を示す。 FIG. 51 shows communication to the tenant when the communication nodes 30-1 and 30-2 are assigned to the same tenant and the communication nodes 30-1 and 30-2 are already in operation and the broadcast path is already set. An operation example in the case of adding the node 30-3 is shown.
この場合には、管理装置40は、制御装置20aに対し、リソースを追加する旨を通知する。当該通知に応じて、制御装置20aは、スイッチ10−1に対し、スイッチ10−2に向けたブロードキャスト経路を実現するための処理規則(ブロードキャスト転送規則)を設定する。
In this case, the
図52は、通信ノード30−1〜30−3が同一テナントに割り当てられ、且つ、通信ノード30−1及び30−2が稼働状態にて既にブロードキャスト経路が設定されている場合において、テナントから通信ノード30−3を削除する場合の動作例を示す。 FIG. 52 shows communication from the tenant when the communication nodes 30-1 to 30-3 are assigned to the same tenant and the communication nodes 30-1 and 30-2 are already operating and the broadcast path is already set. An operation example in the case of deleting the node 30-3 is shown.
この場合には、管理装置40は、制御装置20aに対し、リソースを削除する旨を通知する。当該通知に応じて、制御装置20aは、スイッチ10−1及び10−2に設定した処理規則を削除する。
In this case, the
以上のように、本実施形態に係る通信システムでは、制御装置20aは、管理装置40が通知する情報に基づいて、ブロードキャスト範囲を決定する。制御装置20aは、決定したブロードキャスト範囲に基づいて、スイッチ10に処理規則を設定し、適切な範囲にブロードキャストパケットを転送できる。また、管理装置40は、通信システムの管理者等が入力するテナント管理情報に基づき、テナントに割り当てるリソースや稼働するリソースを自動的に決定する。そのため、管理者は、個々のテナントに割り当てるリソースを細かく管理する必要がない。
As described above, in the communication system according to the present embodiment, the
なお、以上説明した第1及び第2実施形態は単なる例示に過ぎず、様々な変形を施すことができる。第1及び第2の実施形態では、スイッチ10にパケットが到着し、スイッチ10のテーブルDB13に格納するマッチングルールに一致しないことを契機に、制御装置20又は制御装置20aが処理規則の生成等を行う。しかし、例えば、通信システムにテナントが追加されたことを契機に、ブロードキャスト経路を計算し、対応する処理規則をスイッチ10に設定してもよい。その場合には、最初にブロードキャストパケットが送信された場合の応答速度が向上する。
The first and second embodiments described above are merely examples, and various modifications can be made. In the first and second embodiments, when the packet arrives at the
また、管理装置40の機能を制御装置20に組み込むこと、あるいは、制御装置20の機能を管理装置40に組み込むことができる。即ち、制御装置20と管理装置40を同一の機器で実現できる。あるいは、スイッチ10や通信ノード30は、仮想マシン(Virtual Machine)であってもよい。さらに、通信システムには、仮想マシンと物理マシンのスイッチ10や通信ノード30が、混在していてもよい。さらにまた、通信システムが含むリソースは仮想マシンや仮想アプライアンスのような仮想的なリソースであってもよい。その場合には、図53に示すように、論理・物理対応管理装置50のような、仮想リソースと仮想リソースが動作する物理マシンの対応関係を管理する装置を用意するのが好ましい。その際、制御装置20aや管理装置40は、論理・物理対応管理装置50を参照することで、仮想リソースと物理マシンの対応を解決する。
Further, the function of the
最後に、好ましい形態を要約する。 Finally, the preferred form is summarized.
[形態1]
上述の第1の視点に係る通信システムのとおりである。
[形態2]
複数の前記スイッチを含み、
前記複数のスイッチのうちの第1のスイッチに接続される第1の通信ノードが、前記複数のスイッチのうちの第2のスイッチに接続され、且つ、前記第1の通信ノードと同一のグループに属する第2の通信ノードに向けて、前記ブロードキャストパケットを送信すると、
前記制御装置は、前記ブロードキャストパケットを前記第2のスイッチに転送するための第1の処理規則を、前記第1のスイッチに設定すると共に、前記ブロードキャストパケットを前記第2の通信ノードに接続されるポートから送出するための第2の処理規則を、前記第2のスイッチに設定する形態1の通信システム。
[形態3]
グループに第3の通信ノードが追加され、且つ、前記第3の通信ノードと同一のグループに属する他の通信ノードが接続されるスイッチが不存在の場合に、
前記制御装置は、前記ブロードキャストパケットを前記第1のスイッチから前記第3の通信ノードが接続される第3のスイッチまで転送するための処理規則を、前記複数のスイッチのうち少なくとも1つのスイッチに設定する形態2の通信システム。
[形態4]
グループに追加される際の前記第3の通信ノードが停止状態の場合に、
前記制御装置は、前記第3の通信ノードに対応する前記第2の処理規則を、前記第3のスイッチに非設定とする形態3の通信システム。
[形態5]
前記第3の通信ノードが停止状態から稼働状態に遷移する場合に、
前記制御装置は、前記第3の通信ノードに対応する前記第2の処理規則を、前記第3のスイッチに設定する形態4の通信システム。
[形態6]
前記第2の通信ノードが稼働状態から停止状態に遷移する場合に、
前記制御装置は、前記第2の処理規則を、前記第2のスイッチから削除する形態する形態2乃至5のいずれか一に記載の通信システム。
[形態7]
前記第2の通信ノードがグループから削除される場合に、
前記制御装置は、前記第1のスイッチから前記第1の処理規則を削除すると共に、前記第2のスイッチから前記第2の処理規則を削除する形態2乃至6のいずれか一に記載の通信システム。
[形態8]
グループの識別子、グループに属する通信ノードの識別子、グループに属する通信ノードの動作状態、を示す管理情報と、
前記複数のスイッチと前記複数の通信ノード間の接続からなるネットワークのトポロジと、に基づいて、前記第1及び/又は第2の処理規則を設定するスイッチを特定する形態2乃至7のいずれか一に記載の通信システム。
[形態9]
通信システムのテナント、前記テナントに割り当てる通信ノード、前記通信ノードの動作状態、を関連付けるテナント管理情報に基づき、前記管理情報を生成する管理装置をさらに含む形態1乃至8のいずれか一に記載の通信システム。
[形態10]
上述の第2の視点に係る通信方法のとおりである。
[形態11]
前記通信システムは複数の前記スイッチを含み、
前記複数のスイッチのうちの第1のスイッチに接続される第1の通信ノードが、前記複数のスイッチのうちの第2のスイッチに接続され、且つ、前記第1の通信ノードと同一のグループに属する第2の通信ノードに向けて、前記ブロードキャストパケットを送信する工程と、
前記ブロードキャストパケットを前記第2のスイッチに転送するための第1の処理規則を、前記第1のスイッチに設定する工程と、
前記ブロードキャストパケットを前記第2の通信ノードに接続されるポートから送出するための第2の処理規則を、前記第2のスイッチに設定する工程と、
をさらに含む形態10の通信方法。
[形態12]
グループに第3の通信ノードが追加される際に、前記第3の通信ノードと同一のグループに属する他の通信ノードが接続されるスイッチが存在するか否かを判定する工程と、
前記第3の通信ノードと同一のグループに属する他の通信ノードが接続されるスイッチが不存在の場合に、前記ブロードキャストパケットを前記第1のスイッチから前記第3の通信ノードが接続される第3のスイッチまで転送するための処理規則を、前記複数のスイッチのうち少なくとも1つのスイッチに設定する工程と、
をさらに含む形態11の通信方法。
[形態13]
上述の第3の視点に係る制御装置のとおりである。
[形態14]
複数の前記スイッチを制御の対象とし、
前記複数のスイッチのうちの第1のスイッチに接続される第1の通信ノードが、前記複数のスイッチのうちの第2のスイッチに接続され、且つ、前記第1の通信ノードと同一のグループに属する第2の通信ノードに向けて、前記ブロードキャストパケットを送信すると、
前記ブロードキャストパケットを前記第2のスイッチに転送するための第1の処理規則を、前記第1のスイッチに設定すると共に、前記ブロードキャストパケットを前記第2の通信ノードに接続されるポートから送出するための第2の処理規則を、前記第2のスイッチに設定する付記13の制御装置。
[形態15]
グループに第3の通信ノードが追加され、且つ、前記第3の通信ノードと同一のグループに属する他の通信ノードが接続されるスイッチが不存在の場合に、
前記ブロードキャストパケットを前記第1のスイッチから前記第3の通信ノードが接続される第3のスイッチまで転送するための処理規則を、前記複数のスイッチのうち少なくとも1つのスイッチに設定する付記14の制御装置。
[形態16]
グループに追加される際の前記第3の通信ノードが停止状態の場合に、
前記第3の通信ノードに対応する前記第2の処理規則を、前記第3のスイッチに非設定とする付記15の制御装置。
[形態17]
前記第3の通信ノードが停止状態から稼働状態に遷移する場合に、
前記第3の通信ノードに対応する前記第2の処理規則を、前記第3のスイッチに設定する付記16の制御装置。
[形態18]
前記第2の通信ノードが稼働状態から停止状態に遷移する場合に、
前記第2の処理規則を、前記第2のスイッチから削除する付記14乃至17のいずれか一に記載の制御装置。
[形態19]
上述の第4の視点に係る制御装置の制御方法のとおりである。
[形態20]
上述の第5の視点に係るプログラムのとおりである。
なお、第10の形態、第13の形態、第19及び第20の形態は、第1の形態と同様に、第2の形態〜第9の形態に展開することが可能である。
[Form 1]
The communication system according to the first aspect described above.
[Form 2]
Including a plurality of said switches;
A first communication node connected to a first switch of the plurality of switches is connected to a second switch of the plurality of switches and is in the same group as the first communication node. When the broadcast packet is transmitted to the second communication node to which it belongs,
The control device sets a first processing rule for transferring the broadcast packet to the second switch in the first switch, and is connected to the second communication node. The communication system of the
[Form 3]
When a third communication node is added to the group and there is no switch to which another communication node belonging to the same group as the third communication node is connected,
The control device sets a processing rule for transferring the broadcast packet from the first switch to a third switch to which the third communication node is connected to at least one of the plurality of switches. The communication system of the
[Form 4]
When the third communication node when added to the group is in a stopped state,
The communication system according to
[Form 5]
When the third communication node transitions from a stopped state to an operating state,
The communication system according to
[Form 6]
When the second communication node transitions from an operating state to a stopped state,
The communication system according to any one of
[Form 7]
When the second communication node is deleted from the group,
The communication system according to any one of
[Form 8]
Management information indicating the identifier of the group, the identifier of the communication node belonging to the group, and the operating state of the communication node belonging to the group;
Any one of
[Form 9]
The communication according to any one of
[Mode 10]
The communication method according to the second aspect described above.
[Form 11]
The communication system includes a plurality of the switches,
A first communication node connected to a first switch of the plurality of switches is connected to a second switch of the plurality of switches and is in the same group as the first communication node. Transmitting the broadcast packet toward a second communication node to which it belongs;
Setting a first processing rule for transferring the broadcast packet to the second switch in the first switch;
Setting a second processing rule for sending the broadcast packet from a port connected to the second communication node in the second switch;
The communication method according to
[Form 12]
Determining whether there is a switch to which another communication node belonging to the same group as the third communication node is connected when a third communication node is added to the group;
When there is no switch to which another communication node belonging to the same group as the third communication node is connected, the broadcast packet is transmitted from the first switch to the third communication node. Setting a processing rule for transferring to a switch of at least one of the plurality of switches;
The communication method according to
[Form 13]
It is as the control apparatus which concerns on the above-mentioned 3rd viewpoint.
[Form 14]
A plurality of the switches are controlled,
A first communication node connected to a first switch of the plurality of switches is connected to a second switch of the plurality of switches and is in the same group as the first communication node. When the broadcast packet is transmitted to the second communication node to which it belongs,
To set a first processing rule for transferring the broadcast packet to the second switch in the first switch and to send the broadcast packet from a port connected to the second
[Form 15]
When a third communication node is added to the group and there is no switch to which another communication node belonging to the same group as the third communication node is connected,
The control according to
[Form 16]
When the third communication node when added to the group is in a stopped state,
The control device according to supplementary note 15, wherein the second processing rule corresponding to the third communication node is not set in the third switch.
[Form 17]
When the third communication node transitions from a stopped state to an operating state,
The control device according to appendix 16, wherein the second processing rule corresponding to the third communication node is set in the third switch.
[Form 18]
When the second communication node transitions from an operating state to a stopped state,
The control device according to any one of
[Form 19]
It is as the control method of the control apparatus which concerns on the above-mentioned 4th viewpoint.
[Mode 20]
It is as the program concerning the above-mentioned 5th viewpoint.
Note that the tenth, thirteenth, nineteenth, and twentieth forms can be developed into second to ninth forms as in the first form.
なお、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。 Each disclosure of the cited patent documents and the like cited above is incorporated herein by reference. Within the scope of the entire disclosure (including claims) of the present invention, the embodiments and examples can be changed and adjusted based on the basic technical concept. Various disclosed elements (including each element of each claim, each element of each embodiment or example, each element of each drawing, etc.) within the scope of the claims of the present invention, Selection is possible. That is, the present invention of course includes various variations and modifications that could be made by those skilled in the art according to the entire disclosure including the claims and the technical idea. In particular, with respect to the numerical ranges described in this document, any numerical value or small range included in the range should be construed as being specifically described even if there is no specific description.
10 10−1〜10−3、102 スイッチ
11、49 通信部
12 テーブル管理部
13 テーブルデータベース(テーブルDB)
14 転送処理部
20、20a、103 制御装置
21 トポロジ管理部
22 トポロジデータベース(トポロジDB)
23 制御メッセージ処理部
24 経路・アクション計算部
25 パケット転送経路データベース(パケット転送経路DB)
26 処理規則管理部
27 処理規則データベース(処理規則DB)
28、28a ブロードキャスト範囲決定部
29、29a 構成変更処理部
30 30−1〜30−5、101−1〜101−4 通信ノード
31 リソース情報データベース(リソース情報DB)
32 ノード通信部
40 管理装置
41 リソース変更処理部
42 リソース管理部
43 リソースデータベース(リソースDB)
44 割り当て計画部
45 割り当てリソースデータベース(割り当てリソースDB)
46 稼働リソース決定部
47 テナントリソースデータベース(テナントリソースDB)
48 解放処理実行部
50 論理・物理対応管理装置
141 テーブル検索部
142 アクション実行部
10 10-1 to 10-3, 102
14
23 Control
26 processing
28, 28a Broadcast
32
44
46 Operating
48 Release
Claims (10)
前記複数の通信ノード間を接続し、パケットを処理するための処理規則に従いパケットを処理するスイッチと、
前記スイッチに処理規則を設定する制御装置と、
を含み、
前記制御装置は、通信ノードが同一のグループに属する他の複数の通信ノードに向けて送信するブロードキャストパケットを前記他の複数の通信ノードに転送するための処理規則を、前記スイッチに設定すると共に、前記ブロードキャストパケットを前記ブロードキャストパケットの送信元の通信ノードと異なるグループに属する通信ノードに転送するための処理規則を、前記スイッチに非設定とする通信システム。 A plurality of grouped communication nodes;
A switch that connects the plurality of communication nodes and processes a packet in accordance with a processing rule for processing the packet;
A control device for setting processing rules in the switch;
Including
The control device sets processing rules for transferring a broadcast packet transmitted to a plurality of other communication nodes belonging to the same group to the other plurality of communication nodes in the switch, A communication system in which a processing rule for transferring the broadcast packet to a communication node belonging to a group different from a communication node that is a transmission source of the broadcast packet is not set in the switch.
前記複数のスイッチのうちの第1のスイッチに接続される第1の通信ノードが、前記複数のスイッチのうちの第2のスイッチに接続され、且つ、前記第1の通信ノードと同一のグループに属する第2の通信ノードに向けて、前記ブロードキャストパケットを送信すると、
前記制御装置は、前記ブロードキャストパケットを前記第2のスイッチに転送するための第1の処理規則を、前記第1のスイッチに設定すると共に、前記ブロードキャストパケットを前記第2の通信ノードに接続されるポートから送出するための第2の処理規則を、前記第2のスイッチに設定する請求項1の通信システム。 Including a plurality of said switches;
A first communication node connected to a first switch of the plurality of switches is connected to a second switch of the plurality of switches and is in the same group as the first communication node. When the broadcast packet is transmitted to the second communication node to which it belongs,
The control device sets a first processing rule for transferring the broadcast packet to the second switch in the first switch, and is connected to the second communication node. The communication system according to claim 1, wherein a second processing rule for sending from a port is set in the second switch.
前記制御装置は、前記ブロードキャストパケットを前記第1のスイッチから前記第3の通信ノードが接続される第3のスイッチまで転送するための処理規則を、前記複数のスイッチのうち少なくとも1つのスイッチに設定する請求項2の通信システム。 When a third communication node is added to the group and there is no switch to which another communication node belonging to the same group as the third communication node is connected,
The control device sets a processing rule for transferring the broadcast packet from the first switch to a third switch to which the third communication node is connected to at least one of the plurality of switches. The communication system according to claim 2.
前記制御装置は、前記第3の通信ノードに対応する前記第2の処理規則を、前記第3のスイッチに非設定とする請求項3の通信システム。 When the third communication node when added to the group is in a stopped state,
The communication system according to claim 3, wherein the control device does not set the second processing rule corresponding to the third communication node in the third switch.
前記制御装置は、前記第3の通信ノードに対応する前記第2の処理規則を、前記第3のスイッチに設定する請求項4の通信システム。 When the third communication node transitions from a stopped state to an operating state,
The communication system according to claim 4, wherein the control device sets the second processing rule corresponding to the third communication node in the third switch.
前記制御装置は、前記第2の処理規則を、前記第2のスイッチから削除する請求項する請求項2乃至5のいずれか一項に記載の通信システム。 When the second communication node transitions from an operating state to a stopped state,
The communication system according to any one of claims 2 to 5, wherein the control device deletes the second processing rule from the second switch.
前記複数の通信ノード間を接続し、パケットを処理するための処理規則に従いパケットを処理するスイッチと、を含む通信システムの通信方法であって、
同一のグループに属する他の複数の通信ノードに向けてブロードキャストパケットを送信する工程と、
前記ブロードキャストパケットを前記他の複数の通信ノードに転送するための処理規則を、前記スイッチに設定する工程と、
を含む通信方法。 A plurality of grouped communication nodes;
A communication method of a communication system including a switch that connects between the plurality of communication nodes and processes a packet according to a processing rule for processing the packet,
Transmitting a broadcast packet to a plurality of other communication nodes belonging to the same group;
Setting a processing rule in the switch for transferring the broadcast packet to the other plurality of communication nodes;
Including a communication method.
通信ノードが同一のグループに属する他の複数の通信ノードに向けて送信するブロードキャストパケットを前記他の複数の通信ノードに転送するための処理規則を、前記スイッチに設定すると共に、前記ブロードキャストパケットを前記ブロードキャストパケットの送信元の通信ノードと異なるグループに属する通信ノードに転送するための処理規則を、前記スイッチに非設定とする制御装置。 A control device that sets a processing rule for processing a packet in a switch that connects a plurality of communication nodes grouped,
A processing rule for transferring a broadcast packet to be transmitted to a plurality of other communication nodes belonging to the same group to the other plurality of communication nodes is set in the switch, and the broadcast packet is A control device that does not set a processing rule for forwarding to a communication node belonging to a group different from a communication node that is a transmission source of a broadcast packet in the switch.
前記複数のスイッチのうちの第1のスイッチに接続される第1の通信ノードが、前記複数のスイッチのうちの第2のスイッチに接続され、且つ、前記第1の通信ノードと同一のグループに属する第2の通信ノード向けて、ブロードキャストパケットを送信する際に、
グループと、グループに属する通信ノードの対応を示す管理情報、及び前記複数のスイッチと前記複数の通信ノード間の接続からなるネットワークのトポロジに基づいて、前記第1及び第2のスイッチを特定する工程と、
前記ブロードキャストパケットを前記第2のスイッチに転送するための第1の処理規則を、前記第1のスイッチに設定する工程と、
前記ブロードキャストパケットを前記第2の通信ノードに接続されるポートから送出するための第2の処理規則を、前記第2のスイッチに設定する工程と、
を含む制御装置の制御方法。 A control method of a control device for setting a processing rule for processing a packet in a plurality of switches connecting a plurality of communication nodes grouped,
A first communication node connected to a first switch of the plurality of switches is connected to a second switch of the plurality of switches and is in the same group as the first communication node. When sending a broadcast packet to the second communication node to which it belongs,
Identifying the first and second switches based on management information indicating the correspondence between the group and the communication nodes belonging to the group, and the topology of the network comprising the connections between the plurality of switches and the plurality of communication nodes When,
Setting a first processing rule for transferring the broadcast packet to the second switch in the first switch;
Setting a second processing rule for sending the broadcast packet from a port connected to the second communication node in the second switch;
A control method for a control device including:
前記複数のスイッチのうちの第1のスイッチに接続される第1の通信ノードが、前記複数のスイッチのうちの第2のスイッチに接続され、且つ、前記第1の通信ノードと同一のグループに属する第2の通信ノード向けて、ブロードキャストパケットを送信する際に、
グループと、グループに属する通信ノードの対応を示す管理情報、及び前記複数のスイッチと前記複数の通信ノード間の接続からなるネットワークのトポロジに基づいて、前記第1及び第2のスイッチを特定する処理と、
前記ブロードキャストパケットを前記第2のスイッチに転送するための第1の処理規則を、前記第1のスイッチに設定する処理と、
前記ブロードキャストパケットを前記第2の通信ノードに接続されるポートから送出するための第2の処理規則を、前記第2のスイッチに設定する処理と、
を実行させるプログラム。 A program that causes a computer that controls a control device to set a processing rule for processing a packet to a plurality of switches that connect a plurality of grouped communication nodes,
A first communication node connected to a first switch of the plurality of switches is connected to a second switch of the plurality of switches and is in the same group as the first communication node. When sending a broadcast packet to the second communication node to which it belongs,
Processing for identifying the first and second switches based on management information indicating the correspondence between the group and the communication nodes belonging to the group, and the topology of the network including the connections between the plurality of switches and the plurality of communication nodes When,
A process of setting a first processing rule for transferring the broadcast packet to the second switch in the first switch;
A process of setting a second processing rule for sending the broadcast packet from a port connected to the second communication node in the second switch;
A program that executes
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013048319A JP2014175938A (en) | 2013-03-11 | 2013-03-11 | Communication system, communication method, control device, control device control method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013048319A JP2014175938A (en) | 2013-03-11 | 2013-03-11 | Communication system, communication method, control device, control device control method and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014175938A true JP2014175938A (en) | 2014-09-22 |
Family
ID=51696766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013048319A Pending JP2014175938A (en) | 2013-03-11 | 2013-03-11 | Communication system, communication method, control device, control device control method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2014175938A (en) |
-
2013
- 2013-03-11 JP JP2013048319A patent/JP2014175938A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5850068B2 (en) | Control device, communication system, communication method, and program | |
US9794124B2 (en) | Information system, control server, virtual network management method, and program | |
JP5652565B2 (en) | Information system, control device, communication method and program | |
US10742697B2 (en) | Packet forwarding apparatus for handling multicast packet | |
US20130250958A1 (en) | Communication control system, control server, forwarding node, communication control method, and communication control program | |
WO2012108382A1 (en) | Communication system, control device, communication node, and communication method | |
JP2014135721A (en) | Device and method for distributing traffic of data center network | |
US9935876B2 (en) | Communication system, control apparatus, communication apparatus, communication control method, and program | |
US10122654B2 (en) | Divided hierarchical network system based on software-defined networks | |
WO2014112616A1 (en) | Control apparatus, communication apparatus, communication system, switch control method and program | |
JP2015530768A (en) | Control device, control method thereof, and program | |
JPWO2014054768A1 (en) | Communication system, virtual network management apparatus, virtual network management method and program | |
WO2014054691A1 (en) | Communication system, control apparatus, control method, and program | |
JP6323339B2 (en) | COMMUNICATION SYSTEM, CONTROL DEVICE, COMMUNICATION METHOD, CONTROL METHOD, AND PROGRAM | |
WO2014084198A1 (en) | Storage area network system, control device, access control method, and program | |
US20150381775A1 (en) | Communication system, communication method, control apparatus, control apparatus control method, and program | |
US9749240B2 (en) | Communication system, virtual machine server, virtual network management apparatus, network control method, and program | |
WO2014133025A1 (en) | Communication system, host controller, network control method, and program | |
JP2014175938A (en) | Communication system, communication method, control device, control device control method and program | |
US9729391B2 (en) | Method and apparatus for path indication | |
WO2014123194A1 (en) | Communication system, control apparatus, communication control method and program |