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 PDF

Info

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
Application number
JP2013048319A
Other languages
Japanese (ja)
Inventor
Junichi Yamato
純一 大和
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2013048319A priority Critical patent/JP2014175938A/en
Publication of JP2014175938A publication Critical patent/JP2014175938A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a communication system enhancing the safety of a resource sharing network.SOLUTION: The communication system includes: a plurality of communication nodes divided into groups; a switch for connecting the plurality of communication nodes and for processing a packet according to a processing rule to process the packet; and a control device for setting the processing rule to the switch. The control device sets to the switch a processing rule to transfer a broadcast packet, which is transmitted from a communication node to a plurality of other communication nodes subordinate to the same group, whereas the control device does not set to the switch a processing rule to transfer a broadcast packet to a communication node subordinate to a group different from the transmission source communication node of the broadcast packet.

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 Documents 1 and 2). OpenFlow captures communication as an end-to-end flow and performs path control, failure recovery, load balancing, and optimization on a per-flow basis. The OpenFlow switch specified in Non-Patent Document 2 includes a secure channel for communication with the OpenFlow controller, and operates according to a flow table that is appropriately added or rewritten from the OpenFlow controller. In the flow table, for each flow, a set of a match condition (Match Fields) to be matched with a packet header, flow statistical information (Counters), and an instruction (Instructions) defining processing contents is defined (non-patented). (Refer to the section “4.1 Flow Table” in Document 2).

例えば、オープンフロースイッチは、パケットを受信すると、フローテーブルから、受信パケットのヘッダ情報に適合するマッチ条件(非特許文献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通信であることを示す情報が存在する場合、フレーム中に記述された経路ラベル情報で特定されたポートに出力する。   Patent Document 1 discloses a PAN server that manages a specific communication path between terminals in a LAN (Local Area Network). This PAN server sets the communication path of each terminal device as label information, and causes each switch and terminal to set the generated label information. When there is information indicating PAN communication in a frame of data from a certain port of each connected switch, each connected switch outputs the information to the port specified by the route label information described in the frame.

特開2005−073230号公報JP 2005-073230 A

Nick McKeownほか7名、"OpenFlow: Enabling Innovation in Campus Networks"、[online]、[平成25年2月1日検索]、インターネット〈URL:http://www.openflowswitch.org//documents/openflow-wp-latest.pdf〉Nick McKeown and seven others, "OpenFlow: Enabling Innovation in Campus Networks", [online], [searched February 1, 2013], Internet <URL: http://www.openflowswitch.org//documents/openflow- wp-latest.pdf> "OpenFlow Switch Specification" Version 1.1.0. (Wire Protocol 0x02) [平成25年2月1日検索]、インターネット〈URL:http://www.openflowswitch.org/documents/openflow-spec-v1.1.0.pdf〉"OpenFlow Switch Specification" Version 1.1.0. (Wire Protocol 0x02) [Search February 1, 2013], Internet <URL: http://www.openflowswitch.org/documents/openflow-spec-v1.1.0. pdf>

なお、上記先行技術文献の各開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明者らによってなされたものである。   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 (layer 3 switch), or the like. That is, in a situation where a plurality of users share resources in the data center as in cloud computing, the broadcast packet reaches a communication node (resource) assigned to another tenant. More specifically, when a broadcast packet is transmitted in a network constructed for a specific tenant, it is difficult to prevent the broadcast packet from being transferred to a network constructed for another tenant. Yes (it is difficult to ensure network independence for each tenant). However, since each tenant is a separate and independent entity, transferring a packet to a network for another tenant can be a security threat.

本発明は、リソースを共有するネットワークにおいて、当該ネットワークの安全性の向上に寄与する通信システム、通信方法、制御装置、制御装置の制御方法及びプログラムを提供することを目的とする。   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.

一実施形態の概要を説明するための図である。It is a figure for demonstrating the outline | summary of one Embodiment. 第1の実施形態に係る通信システムの一例を示す図である。It is a figure which shows an example of the communication system which concerns on 1st Embodiment. スイッチ10の内部構成の一例を示す図である。2 is a diagram illustrating an example of an internal configuration of a switch 10. FIG. スイッチ10に設定する処理規則の一例を示す図である。4 is a diagram illustrating an example of processing rules set in a switch 10. FIG. インストラクションフィールドに設定可能な処理内容とその内容の一例の図である。It is a figure of an example of the processing content which can be set to an instruction field, and its content. 制御装置20の内部構成の一例を示す図である。3 is a diagram illustrating an example of an internal configuration of a control device 20. FIG. トポロジDB22のエントリの一例を示す図である。It is a figure which shows an example of the entry of topology DB22. パケット転送経路DB25のエントリの一例を示す図である。It is a figure which shows an example of the entry of packet transfer path | route DB25. リソース情報DB31のエントリの一例を示す図である。It is a figure which shows an example of the entry of resource information DB31. スイッチ10の動作の一例を示すフローチャートである。4 is a flowchart showing an example of the operation of the switch 10. 制御装置20の動作の一例を示すフローチャートである。3 is a flowchart showing an example of the operation of the control device 20. 制御装置20の動作の一例を示すフローチャートである。3 is a flowchart showing an example of the operation of the control device 20. 制御装置20の動作の一例を示すフローチャートである。3 is a flowchart showing an example of the operation of the control device 20. 制御装置20の動作の一例を示すフローチャートである。3 is a flowchart showing an example of the operation of the control device 20. 制御装置20の動作の一例を示すフローチャートである。3 is a flowchart showing an example of the operation of the control device 20. 制御装置20の動作の一例を示すフローチャートである。3 is a flowchart showing an example of the operation of the control device 20. 第1の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 1st Embodiment. 第1の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 1st Embodiment. 第1の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 1st Embodiment. 第1の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 1st Embodiment. 第1の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 1st Embodiment. 第1の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 1st Embodiment. 第1の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 1st Embodiment. 第1の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 1st Embodiment. 第2の実施形態に係る通信システムの一例を示す図である。It is a figure which shows an example of the communication system which concerns on 2nd Embodiment. 制御装置20aの内部構成の一例を示す図である。It is a figure which shows an example of an internal structure of the control apparatus 20a. 管理装置40の内部構成の一例を示す図である。3 is a diagram illustrating an example of an internal configuration of a management device 40. FIG. リソースDB43のエントリの一例を示す図である。It is a figure which shows an example of the entry of resource DB43. 割り当てリソースDB45のエントリの一例を示す図である。It is a figure which shows an example of the entry of allocation resource DB45. テナントリソースDB47のエントリの一例を示す図である。It is a figure which shows an example of the entry of tenant resource DB47. 制御装置20aの動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the control apparatus 20a. ブロードキャスト範囲決定部28aの動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the broadcast range determination part 28a. 制御装置20aの動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the control apparatus 20a. 制御装置20aの動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the control apparatus 20a. 制御装置20aの動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the control apparatus 20a. 制御装置20aの動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the control apparatus 20a. 制御装置20aの動作の一例を示すフローチャートである。It is a flowchart which shows an example of operation | movement of the control apparatus 20a. 管理装置40の動作の一例を示すフローチャートである。4 is a flowchart showing an example of the operation of the management device 40. 管理装置40の動作の一例を示すフローチャートである。4 is a flowchart showing an example of the operation of the management device 40. 管理装置40の動作の一例を示すフローチャートである。4 is a flowchart showing an example of the operation of the management device 40. 管理装置40の動作の一例を示すフローチャートである。4 is a flowchart showing an example of the operation of the management device 40. 管理装置40の動作の一例を示すフローチャートである。4 is a flowchart showing an example of the operation of the management device 40. 管理装置40の動作の一例を示すフローチャートである。4 is a flowchart showing an example of the operation of the management device 40. 管理装置40の動作の一例を示すフローチャートである。4 is a flowchart showing an example of the operation of the management device 40. 第2の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 2nd Embodiment. 第2の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 2nd Embodiment. 第2の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 2nd Embodiment. 第2の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 2nd Embodiment. 第2の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 2nd Embodiment. 第2の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 2nd Embodiment. 第2の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 2nd Embodiment. 第2の実施形態に係る通信システムの動作の一例を示すシーケンス図である。It is a sequence diagram which shows an example of operation | movement of the communication system which concerns on 2nd Embodiment. 通信システムの構成の一例を示す図である。It is a figure which shows an example of a structure of a communication system.

初めに、図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 switch 102 and a control device 103 that sets a processing rule for the switch 102 are included. The control device 103 sets 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 in the switch 102, and broadcasts. A processing rule for transferring a 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 102.

例えば、通信ノード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 control device 103 sends the broadcast packet to the switch 102. -2 and 101-3 are set as processing rules. More specifically, the control device 103 sets a processing rule for sending a broadcast packet from the ports connected to the communication nodes 101-2 and 101-2 to the switch 102. On the other hand, the control device 103 does not set the processing rule for sending the broadcast packet from the port connected to the communication node 101-4 to the switch 102. This is because the communication node 101-4 belongs to a different group from the communication node 101-1. As a result, broadcast packets are transferred only to communication nodes belonging to the same group, and the security of the network is improved.

以下に具体的な実施の形態について、図面を参照してさらに詳しく説明する。   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 control device 20 for controlling a network including the switches 10-1 to 10-3, and a switch 10-1. A configuration including communication nodes 30-1 and 30-2, a communication node 30-3 connected to the switch 10-2, and communication nodes 30-4 and 30-5 connected to the switch 10-3 is shown. Has been. For example, the control device 20 corresponds to an open flow controller, and the switches 10-1 to 10-3 correspond to open flow switches. The control device 20 and the switches 10-1 to 10-3 are each connected by a secure channel.

制御装置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 control device 20 controls the operation or stop of the communication nodes 30-1 to 30-5. More specifically, the control device 20 operates or stops each communication node by transmitting a control message to the communication nodes 30-1 to 30-5. In the following description, the switches 10-1 to 10-3 are referred to as “switch 10” when it is not necessary to distinguish them. Similarly, the communication nodes 30-1 to 30-5 are expressed as “communication node 30” when it is not necessary to distinguish them. The communication system shown in FIG. 2 is an example, and the number of switches and communication nodes and their connection are not limited to the configuration shown in FIG. For example, although a plurality of switches 10-1 to 10-3 are illustrated in FIG. 2, the number of switches that connect the communication nodes 30-1 to 30-5 may be one.

図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 control device 20 manages the allocation status of the communication node 30 to each tenant and the operating state (operating state or stopped state) of the communication node 30 allocated to the tenant as resource management information. Based on this resource management information, the control device 20 appropriately sets a processing rule in the switch 10 to transfer the broadcast packet to an appropriate communication node 30.

通信ノード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 control device 20 and switches the operation mode. For example, when the control device 20 instructs the transition from the stopped state to the operating state, the communication node 30 executes a start process (boot process). When the control device 20 instructs the transition from the operating state to the stopped state, the communication node 30 executes a termination process (shutdown process). Alternatively, the communication node 30 may start (start the job) or end (end the job) a service provided to the tenant instead of the start process and the end process.

図3は、スイッチ10の内部構成の一例を示す図である。スイッチ10は、通信部11と、テーブル管理部12と、テーブルデータベース(テーブルDB)13と、転送処理部14と、を含んで構成されている。   FIG. 3 is a diagram illustrating an example of the internal configuration of the switch 10. The switch 10 includes a communication unit 11, a table management unit 12, a table database (table DB) 13, and a transfer processing unit 14.

通信部11は、スイッチ10に処理規則(フローエントリ)を設定する制御装置20との通信を実現する手段である。本実施形態では、通信部11は、非特許文献2のオープンフロープロトコルを用いて制御装置20と通信するものとする。但し、通信部11と制御装置20との通信プロトコルは、オープンフロープロトコルに限定されるものではない。   The communication unit 11 is means for realizing communication with the control device 20 that sets a processing rule (flow entry) in the switch 10. In the present embodiment, the communication unit 11 communicates with the control device 20 using the OpenFlow protocol of Non-Patent Document 2. However, the communication protocol between the communication unit 11 and the control device 20 is not limited to the open flow protocol.

テーブル管理部12は、テーブルDB13に保持されているフローテーブルを管理する手段である。より具体的には、テーブル管理部12は、制御装置20から指示された処理規則をテーブルDB13に登録し、転送処理部14から新規パケットを受信したことが通知されると、制御装置20に処理規則の設定を要求する。   The table management unit 12 is means for managing the flow table held in the table DB 13. More specifically, the table management unit 12 registers the processing rule instructed by the control device 20 in the table DB 13, and when notified from the transfer processing unit 14 that a new packet has been received, Require rules to be set.

テーブルDB13は、転送処理部14が受信パケットの処理を行う際に参照するフローテーブルを1つ以上格納可能なデータベースによって構成される。   The table DB 13 is configured by a database that can store one or more flow tables to be referred to when the transfer processing unit 14 processes received packets.

転送処理部14は、テーブル検索部141と、アクション実行部142と、を含んで構成される。テーブル検索部141は、テーブルDB13に格納されたフローテーブルから、受信パケットに適合するマッチフィールドを持つエントリを検索する手段である。アクション実行部142は、テーブル検索部141にて検索されたエントリのインストラクションフィールドに示す処理内容に従ってパケット処理を行う手段である。   The transfer processing unit 14 includes a table search unit 141 and an action execution unit 142. The table search unit 141 is a means for searching for an entry having a match field that matches the received packet from the flow table stored in the table DB 13. The action execution unit 142 is a unit that performs packet processing according to the processing content indicated in the instruction field of the entry searched by the table search unit 141.

転送処理部14は、受信パケットに適合するマッチフィールドを持つエントリが見つからなかった場合は、その旨をテーブル管理部12に通知する。さらに、転送処理部14は、パケット処理に応じて、テーブルDB13に登録されている統計情報を更新する。   If no entry having a match field that matches the received packet is found, the transfer processing unit 14 notifies the table management unit 12 to that effect. Further, the transfer processing unit 14 updates the statistical information registered in the table DB 13 according to the packet processing.

図4は、スイッチ10に設定する処理規則の一例を示す図である。図4を参照すると、受信パケットのパケットヘッダと照合するルールを格納するマッチフィールド(Match Field)と、ルールに適合するパケット等の統計情報を格納するフロー統計情報フィールド(Counters)と、ルールに適合するパケットに適用する処理内容(Action)を格納するインストラクションフィールド(Instructions)と、を対応付けたエントリ(処理規則)が示されている。なお、マッチフィールドには、入力ポートや送信元MACアドレス等に関するルールを格納する複数のカラムが含まれる。また、受信パケットのパケットヘッダと照合するルールとして、マッチフィールドの条件にワイルドカードを設定してもよい。   FIG. 4 is a diagram illustrating an example of processing rules set in the switch 10. Referring to FIG. 4, a match field (Match Field) that stores a rule that matches a packet header of a received packet, a flow statistics information field (Counters) that stores statistical information such as a packet that conforms to the rule, and a rule that matches An entry (processing rule) in which an instruction field (Instructions) for storing processing contents (Action) to be applied to a packet to be associated is shown is shown. The match field includes a plurality of columns for storing rules relating to input ports, transmission source MAC addresses, and the like. Further, as a rule for matching with the packet header of the received packet, a wild card may be set in the condition of the match field.

図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 switch 10 can output the packet from the designated port after rewriting the VLAN ID of the packet transmitted from a certain source to the destination, for example.

図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 control device 20. The control device 20 includes a topology management unit 21, a topology database (topology DB) 22, a control message processing unit 23, a route / action calculation unit 24, a packet transfer route database (packet transfer route DB) 25, and a processing rule. Node communication for communicating with the management unit 26, the processing rule database (processing rule DB) 27, the broadcast range determining unit 28, the configuration change processing unit 29, the resource information database (resource information DB) 31, and the switch 10. And the unit 32.

トポロジ管理部21は、制御メッセージ処理部23及びノード通信部32を介して、制御装置20が制御対象とするスイッチ10の接続情報(スイッチ10と通信ノード30の接続に関する情報、スイッチ10同士の接続に関する情報)を集約し、ネットワークのトポロジを管理する。トポロジ管理部21は、スイッチ10に対して、接続情報の提供を要求し、その応答から得られる情報に基づき、ネットワークのトポロジを管理してもよいし、通信システムの管理者がトポロジを予め制御装置20に入力してもよい。   The topology management unit 21 connects the connection information of the switch 10 to be controlled by the control device 20 (information regarding the connection between the switch 10 and the communication node 30 and the connection between the switches 10 via the control message processing unit 23 and the node communication unit 32. Information) and manage the network topology. The topology management unit 21 may request the switch 10 to provide connection information and manage the topology of the network based on information obtained from the response, or the communication system administrator may control the topology in advance. You may input into the apparatus 20. FIG.

トポロジ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 control device 20 is composed of the connection between the switches 10 and the connection between the switch 10 and the communication node 30, the topology DB 22 stores information regarding these connections.

図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 switches 10. Referring to FIG. 7A, the connection between the switches 10 is defined by a set of DPID (DataPath ID) for identifying each switch 10 and a port number corresponding to the DPID.

図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 switch 10 and the communication node 30. Referring to FIG. 7B, the switch 10 and the communication node are associated with each other by associating the DPID of the switch 10 and its port number with the MAC address of the NIC (Network Interface Card) included in the communication node 30 connected to the port. 30 connections are defined. In the following description, when a MAC address of a communication device (for example, the switch 10 or the communication node 30) is described, it means a MAC address of a NIC included in the communication device.

制御メッセージ処理部23は、スイッチ10から受信したメッセージを解析して、制御装置20内の該当する処理手段に引き渡す。   The control message processing unit 23 analyzes the message received from the switch 10 and delivers it to the corresponding processing means in the control device 20.

経路・アクション計算部24は、トポロジDB22が記憶するネットワークのトポロジに基づいて、フローごとのパケット転送経路を計算する。経路・アクション計算部24は、計算したパケット転送経路をパケット転送経路DB25に登録する。経路・アクション計算部24は、スイッチ10から処理規則の設定を要求された場合に、パケット転送経路を計算する。   The route / action calculation unit 24 calculates a packet transfer route for each flow based on the network topology stored in the topology DB 22. The route / action calculation unit 24 registers the calculated packet transfer route in the packet transfer route DB 25. The route / action calculation unit 24 calculates a packet transfer route when the switch 10 is requested to set a processing rule.

また、経路・アクション計算部24は、ブロードキャスト範囲決定部28から、ブロードキャストパケットを転送する範囲(スイッチ10及びその接続ポート)が指定され、ブロードキャスト用のパケット転送経路の計算の指示を受ける。経路・アクション計算部24は、指示に従って計算したブロードキャスト用のパケット転送経路をパケット転送経路DB25に登録する。なお、以降の説明において、ブロードキャスト用のパケット転送経路を、ブロードキャスト経路と表記する。また、ユニキャスト用のパケット転送経路を、ユニキャスト経路と表記する。経路・アクション計算部24は、ユニキャスト経路とブロードキャスト経路を計算し、それぞれのパケット転送経路を異なるフォーマットを用いてパケット転送経路DB25に登録する。   Further, the route / action calculation unit 24 is designated by the broadcast range determination unit 28 as the range (switch 10 and its connection port) for transferring the broadcast packet, and receives an instruction to calculate the packet transfer route for broadcast. The route / action calculation unit 24 registers the packet transfer route for broadcast calculated in accordance with the instruction in the packet transfer route DB 25. In the following description, a broadcast packet transfer path is referred to as a broadcast path. Further, a unicast packet transfer path is referred to as a unicast path. The route / action calculation unit 24 calculates a unicast route and a broadcast route, and registers each packet transfer route in the packet transfer route DB 25 using a different format.

図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 switch 10 that realizes a broadcast route. For example, in FIG. 2, if the broadcast path is switch 10-1 (start point), switch 10-2, switch 10-3 (end point), matching of processing rules set in switch 10-1 and switch 10-2. The rule is stored in the rule part field. More specifically, the MAC address of the communication node 30 that has transmitted the broadcast packet and the broadcast address are stored in the rule part field.

処理規則管理部26は、スイッチ10に設定する処理規則を管理する。処理規則管理部26は、経路・アクション計算部24にて計算されたパケット転送経路に基づき、スイッチ10に設定する処理規則を生成し、生成した処理規則を処理規則DB27に登録する。また、処理規則管理部26は、ブロードキャスト範囲決定部28の指示に基づき、スイッチ10に設定する処理規則を生成し、生成した処理規則を処理規則DB27に登録する。あるいは、処理規則管理部26は、ブロードキャスト範囲決定部28の指示に基づき、スイッチ10の設定された処理規則を削除する。さらに、処理規則管理部26は、計算した処理規則を、制御メッセージ処理部23及びノード通信部32を介してスイッチ10に設定する。   The processing rule management unit 26 manages processing rules set in the switch 10. The processing rule management unit 26 generates a processing rule to be set in the switch 10 based on the packet transfer route calculated by the route / action calculation unit 24 and registers the generated processing rule in the processing rule DB 27. In addition, the processing rule management unit 26 generates a processing rule to be set in the switch 10 based on an instruction from the broadcast range determination unit 28 and registers the generated processing rule in the processing rule DB 27. Alternatively, the processing rule management unit 26 deletes the processing rule set for the switch 10 based on an instruction from the broadcast range determination unit 28. Further, the processing rule management unit 26 sets the calculated processing rule in the switch 10 via the control message processing unit 23 and the node communication unit 32.

より具体的には、処理規則管理部26は、経路・アクション計算部24が計算したユニキャスト経路に基づき、通信ノード間のユニキャストパケットを転送するための処理規則を生成し、スイッチ10に設定する。また、処理規則管理部26は、経路・アクション計算部24が計算したブロードキャスト経路に基づき、ブロードキャストパケットを、テナントに属する通信ノード30に転送するための処理規則を生成し、スイッチ10に設定する。   More specifically, the processing rule management unit 26 generates a processing rule for transferring a unicast packet between communication nodes based on the unicast route calculated by the route / action calculation unit 24 and sets the processing rule in the switch 10. To do. Further, the processing rule management unit 26 generates a processing rule for transferring the broadcast packet to the communication node 30 belonging to the tenant based on the broadcast route calculated by the route / action calculation unit 24 and sets the processing rule in the switch 10.

パケット転送経路を実現するための処理規則には、性質の異なる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 switch 10 to another switch 10. The second processing rule is a processing rule for sending a packet from a port connected to the communication node 30 that receives the packet. Note that the processing rules for realizing the broadcast path are expressed as a broadcast transfer rule, a processing rule corresponding to the first processing rule, and a packet out rule as a processing rule corresponding to the second processing rule. Give an explanation.

ブロードキャスト範囲決定部28は、リソース情報DB31が記憶するリソース管理情報とトポロジ情報に基づいて、テナントに属する通信ノード30が送信するブロードキャストパケットを転送すべきスイッチ10及びその接続ポートを決定する手段である。ブロードキャスト範囲決定部28は、決定したスイッチ10及びその接続ポートを指定し、経路・アクション計算部24に対して、ブロードキャスト経路の計算を指示する。あるいは、ブロードキャスト範囲決定部28は、処理規則管理部26に対して、パケットアウト規則の生成及びスイッチ10への設定又は削除を指示する。   The broadcast range determination unit 28 is a means for determining the switch 10 to which a broadcast packet transmitted by the communication node 30 belonging to the tenant and its connection port are to be transferred based on the resource management information and topology information stored in the resource information DB 31. . The broadcast range determination unit 28 designates the determined switch 10 and its connection port, and instructs the route / action calculation unit 24 to calculate a broadcast route. Alternatively, the broadcast range determination unit 28 instructs the processing rule management unit 26 to generate a packet-out rule and set or delete the packet-out rule.

構成変更処理部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 message processing unit 23 and the node communication unit 32. By transmitting, the communication node 30-1 is stopped.

リソース情報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 control device 20. For example, the communication node 30 assigned to each tenant and its operation state are managed by rewriting the resource management information by the communication system administrator (data center administrator) using a terminal or the like not shown in FIG.

なお、図3、図6に示したスイッチ10、制御装置20の各部(処理手段)は、これらの装置を構成するコンピュータに、そのハードウェアを用いて、後述する各処理を実行させるコンピュータプログラムにより実現することもできる。   Each unit (processing means) of the switch 10 and the control device 20 shown in FIGS. 3 and 6 is executed by a computer program that causes a computer constituting these devices to execute each process described later using the hardware. It can also be realized.

次に、スイッチ10及び制御装置20の動作について説明する。   Next, operations of the switch 10 and the control device 20 will be described.

図10は、スイッチ10の動作の一例を示すフローチャートである。図10は、スイッチ10がパケットを受け取った際の動作例を示す。   FIG. 10 is a flowchart illustrating an example of the operation of the switch 10. FIG. 10 shows an operation example when the switch 10 receives a packet.

スイッチ10の転送処理部14は、テーブルDB13に格納されている処理規則のマッチフィールドと受信パケットのパケットヘッダを比較し、受信パケットのパケットヘッダに一致する処理規則が存在するか否かを検索する(ステップS101、S102)。   The transfer processing unit 14 of the switch 10 compares the processing rule match field stored in the table DB 13 with the packet header of the received packet, and searches for a processing rule that matches the packet header of the received packet. (Steps S101 and S102).

受信パケットのパケットヘッダに一致するマッチフィールドを持つ処理規則が存在する場合(ステップ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 transfer processing unit 14 performs processing specified in the instruction field of the processing rule searched in step S101. (Action) is executed on the received packet (step S103).

一方、受信パケットのパケットヘッダに一致するマッチフィールドを持つ処理規則が存在しない場合(ステップ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 switch 10 adds (ADD) or deletes (DEL) a flow entry stored in the table DB 13 by receiving a FlowMod message from the control device 20.

図11は、制御装置20の動作の一例を示すフローチャートである。図11は、スイッチ10からパケットが送られてきた場合における制御装置20の動作例を示す。   FIG. 11 is a flowchart illustrating an example of the operation of the control device 20. FIG. 11 shows an operation example of the control device 20 when a packet is sent from the switch 10.

スイッチ10が送信するパケットを受信すると、制御メッセージ処理部23は、当該パケットがブロードキャストパケットか否かを判定する(ステップS201)。   When receiving the packet transmitted by the switch 10, the control message processing unit 23 determines whether or not the packet is a broadcast packet (step S201).

ブロードキャストパケットでなければ(ステップ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 / action calculation unit 24 calculates the source and destination communication nodes 30 from the packet header, and calculates the packet transfer route (unicast route) using the network topology stored in the topology DB 22. To do. Thereafter, the route / action calculation unit 24 registers the unicast route calculated in the previous step in the packet transfer route DB 25 (step S203).

ステップS204において、処理規則管理部26は、経路・アクション計算部24が計算したユニキャスト経路を実現する処理規則(フローエントリ)を生成する。その後、処理規則管理部26は、生成した処理規則を処理規則DB27に登録すると共に、対応するスイッチ10に処理規則を、制御メッセージ処理部23及びノード通信部32を介して設定する(ステップS205)。   In step S204, the processing rule management unit 26 generates a processing rule (flow entry) that realizes the unicast route calculated by the route / action calculation unit 24. Thereafter, the processing rule management unit 26 registers the generated processing rule in the processing rule DB 27 and sets the processing rule in the corresponding switch 10 via the control message processing unit 23 and the node communication unit 32 (step S205). .

ステップS206において、処理規則管理部26は、宛先の通信ノード30に最も近接するスイッチ10に対して、宛先の通信ノード30にパケットを送出するように指示(パケットアウトを指示)すると共に、パケットを当該通信ノード30に送信する。   In step S206, the processing rule management unit 26 instructs the switch 10 closest to the destination communication node 30 to send the packet to the destination communication node 30 (instructs packet out), and sends the packet to the destination communication node 30. Transmit to the communication node 30.

ステップS207において、ブロードキャスト範囲決定部28は、受信したブロードキャストパケットを転送すべきスイッチ10及びその接続ポートを決定する(ブロードキャスト範囲を決定する)。より具体的には、ブロードキャスト範囲決定部28は、ブロードキャストパケットを送信した通信ノード30と同一のグループに属する通信ノード30が接続されたスイッチ10とその接続ポートを割り出す。その際、ブロードキャスト範囲決定部28は、リソース情報DB31を検索し、ブロードキャストパケットの送信元の通信ノード30と同一のグループに属する通信ノード群を取得する。   In step S207, the broadcast range determination unit 28 determines the switch 10 to which the received broadcast packet is to be transferred and its connection port (determines the broadcast range). More specifically, the broadcast range determination unit 28 determines the switch 10 to which the communication node 30 belonging to the same group as the communication node 30 that transmitted the broadcast packet is connected and its connection port. At that time, the broadcast range determination unit 28 searches the resource information DB 31 and acquires a communication node group belonging to the same group as the communication node 30 that is the transmission source of the broadcast packet.

例えば、図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 range determining unit 28 refers to the network topology stored in the topology DB 22 to determine the switch 10 to which the acquired communication node group is connected and its connection port. In the above example, the switches 10-1 and 10-2 are determined as the switch 10 to which the acquired communication node group is connected. The broadcast range determination unit 28 designates the determined switch 10 and its connection port, and instructs the route / action calculation unit 24 to calculate a packet transfer route.

ステップS208において、経路・アクション計算部24は、ブロードキャスト経路を計算する。より具体的には、経路・アクション計算部24は、最初にブロードキャストパケットを受信したスイッチ10と、前ステップにおいて割り出したスイッチ10間のブロードキャスト経路を計算する(ステップS208)。   In step S208, the route / action calculation unit 24 calculates a broadcast route. More specifically, the route / action calculation unit 24 calculates a broadcast route between the switch 10 that first received the broadcast packet and the switch 10 determined in the previous step (step S208).

その後、経路・アクション計算部24は、前ステップで計算したブロードキャスト経路を、パケット転送経路DB25に登録する(ステップS209)。より具体的には、送信元の通信ノード30が含まれるテナントのテナントIDをテナントIDフィールドに格納し、送信元の通信ノード30のMACアドレスとブロードキャストアドレスを、ルール部フィールドに格納する。   Thereafter, the route / action calculation unit 24 registers the broadcast route calculated in the previous step in the packet transfer route DB 25 (step S209). More specifically, the tenant ID of the tenant including the transmission source communication node 30 is stored in the tenant ID field, and the MAC address and broadcast address of the transmission source communication node 30 are stored in the rule part field.

ステップS210及びS11において、処理規則管理部26は、経路・アクション計算部24が計算したブロードキャスト経路を実現する処理規則を生成する。より詳細には、ステップS210において、処理規則管理部26は、ブロードキャスト転送規則を生成する。また、ステップS211において、処理規則管理部26は、パケットアウト規則を生成する。   In steps S <b> 210 and S <b> 11, the processing rule management unit 26 generates a processing rule that realizes the broadcast route calculated by the route / action calculation unit 24. More specifically, in step S210, the processing rule management unit 26 generates a broadcast transfer rule. In step S211, the processing rule management unit 26 generates a packet-out rule.

その後、処理規則管理部26は、ステップS210及びS211で生成した処理規則を処理規則DB27に登録すると共に、対応するスイッチ10に処理規則を、制御メッセージ処理部23及びノード通信部32を介して設定する(ステップS212)。例えば、図9(b)に示すリソース管理情報が登録されている場合に、通信ノード30−1がブロードキャストパケットを送信すれば、ブロードキャスト転送規則として、スイッチ10−1からスイッチ10−2にブロードキャストパケットを転送する処理規則が生成され、スイッチ10−1に設定される。   Thereafter, the processing rule management unit 26 registers the processing rules generated in steps S210 and S211 in the processing rule DB 27 and sets the processing rules in the corresponding switch 10 via the control message processing unit 23 and the node communication unit 32. (Step S212). For example, when the resource management information shown in FIG. 9B is registered, if the communication node 30-1 transmits a broadcast packet, the broadcast packet is transmitted from the switch 10-1 to the switch 10-2 as a broadcast transfer rule. Is generated and set in the switch 10-1.

また、パケットアウト規則として、スイッチ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 rule management unit 26 returns the received packet to the switch 10 that has transmitted the packet. Note that various route search methods such as the Dijkstra method can be used for calculating the packet transfer routes (unicast route and broadcast route) in steps S202 and S208.

図12は、制御装置20の動作の一例を示すフローチャートである。図12は、リソース管理情報を書き換えることで、テナント(グループ)に属する通信ノード30の稼働が、制御装置20に通知された場合の動作例を示す。   FIG. 12 is a flowchart illustrating an example of the operation of the control device 20. FIG. 12 shows an operation example when the control device 20 is notified of the operation of the communication node 30 belonging to the tenant (group) by rewriting the resource management information.

グループと、稼働する通信ノード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 range determination unit 28 determines whether or not a broadcast path exists in the specified tenant (step S221). . More specifically, the broadcast range determination unit 28 searches the packet transfer path DB 25 and confirms the existence of the broadcast path based on the presence / absence of an entry whose broadcast address is stored in the rule part field.

ブロードキャスト経路が存在しなければ(ステップ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 range determination unit 28 searches the topology DB 22 to identify the switch 10 to which the designated communication node 30 is connected (step S222). . The broadcast range determination unit 28 designates the identified switch 10 and instructs the processing rule management unit 26 to generate a packet-out rule (processing rule).

次に、処理規則管理部26は、前ステップにおいて指定されたスイッチ10に設定するパケットアウト規則を生成する(ステップS223)。なお、ステップS221で確認したように、指定されたテナントには既にブロードキャスト経路が存在している。つまり、スイッチ10には既にブロードキャスト転送規則が設定されている。そのため、スイッチ10に対してパケットアウト規則を生成すれば足りる。その後、処理規則管理部26は、前ステップで生成した処理規則を処理規則DB27に登録すると共に、対応するスイッチ10に処理規則を、制御メッセージ処理部23及びノード通信部32を介して設定する(ステップS224)。   Next, the processing rule management unit 26 generates a packet-out rule to be set in the switch 10 designated in the previous step (step S223). As confirmed in step S221, the designated tenant already has a broadcast route. That is, the broadcast transfer rule is already set in the switch 10. Therefore, it is sufficient to generate a packet-out rule for the switch 10. Thereafter, the processing rule management unit 26 registers the processing rule generated in the previous step in the processing rule DB 27 and sets the processing rule in the corresponding switch 10 via the control message processing unit 23 and the node communication unit 32 ( Step S224).

図13は、制御装置20の動作の一例を示すフローチャートである。図13は、リソース管理情報を書き換えることで、テナントへの通信ノード30の追加が、制御装置20に通知された場合の動作例を示す。   FIG. 13 is a flowchart illustrating an example of the operation of the control device 20. FIG. 13 shows an operation example when the control device 20 is notified of the addition of the communication node 30 to the tenant by rewriting the resource management information.

グループと、通信ノードが指定されて通信ノード30の追加が通知されると、ブロードキャスト範囲決定部28は、指定されたテナントにブロードキャスト経路が存在するか否かを判定する(ステップS231)。   When the group and the communication node are specified and the addition of the communication node 30 is notified, the broadcast range determination unit 28 determines whether or not a broadcast path exists in the specified tenant (step S231).

ブロードキャスト経路が存在しなければ(ステップ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 range determination unit 28 searches the topology DB 22 to identify the switch 10 to which the designated communication node 30 is connected (step S232). .

その後、ブロードキャスト範囲決定部28は、前ステップにおいて特定されたスイッチ10に、指定されたテナントの他の通信ノード30が接続されているか否かを判定する(ステップS233)。より具体的には、ブロードキャスト範囲決定部28は、トポロジDB22を検索することで、前ステップで特定されたスイッチ10に、指定されたテナントと同一のグループに属する他の通信ノード30が既に接続されているか否かを判定する。   Thereafter, the broadcast range determining unit 28 determines whether another communication node 30 of the designated tenant is connected to the switch 10 specified in the previous step (step S233). More specifically, the broadcast range determination unit 28 searches the topology DB 22 so that another communication node 30 belonging to the same group as the designated tenant is already connected to the switch 10 specified in the previous step. It is determined whether or not.

特定されたスイッチ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 switch 10 to which the added communication node 30 is connected is formed. On the other hand, when the other communication node 30 of the tenant specified by the specified switch 10 is not connected (step S233, No branch), the broadcast range determination unit 28 determines the route / action calculation unit 24 Instructing the calculation of the broadcast route from the start point of the already existing broadcast route to the switch 10 specified in step S232 (step S234). The route / action calculation unit 24 calculates a broadcast route according to the instruction.

次に、処理規則管理部26は、前ステップにおいて計算されたブロードキャスト経路を実現する処理規則(ブロードキャスト転送規則)を生成する(ステップS235)。その後、処理規則管理部26は、前ステップで生成したブロードキャスト転送規則を処理規則DB27に登録すると共に、対応するスイッチ10にブロードキャスト転送規則を、制御メッセージ処理部23及びノード通信部32を介して設定する(ステップS236)。   Next, the processing rule management unit 26 generates a processing rule (broadcast transfer rule) that realizes the broadcast path calculated in the previous step (step S235). Thereafter, the processing rule management unit 26 registers the broadcast transfer rule generated in the previous step in the processing rule DB 27 and sets the broadcast transfer rule in the corresponding switch 10 via the control message processing unit 23 and the node communication unit 32. (Step S236).

ここで、例えば、図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 range determination unit 28 causes the route / action calculation unit 24 to calculate a broadcast route from the switch 10-2 to the switch 10-3. The processing rule management unit 26 sets a broadcast transfer rule in the switch 10-2 based on the calculated broadcast route. However, in a situation where the communication node 30 is simply added to the tenant, it is not necessary to transfer the broadcast packet to the newly added communication node 30. That is, there is no need to set a packet out rule in the switch 10-3.

テナントに通信ノード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 switch 10 in advance, thereby suppressing a delay in transferring a broadcast packet.

図14は、制御装置20の動作の一例を示すフローチャートである。図14は、リソース管理情報を書き換えることで、テナントに属する通信ノード30の停止が、制御装置20に通知された場合の動作例を示す。   FIG. 14 is a flowchart illustrating an example of the operation of the control device 20. FIG. 14 shows an operation example when the control device 20 is notified that the communication node 30 belonging to the tenant is stopped by rewriting the resource management information.

グループと、通信ノードが指定されて通信ノードの停止が通知されると、ブロードキャスト範囲決定部28は、指定されたテナントにブロードキャスト経路が存在するか否かを判定する(ステップS241)。   When a group and a communication node are specified and a stop of the communication node is notified, the broadcast range determination unit 28 determines whether a broadcast path exists in the specified tenant (step S241).

ブロードキャスト経路が存在しなければ(ステップ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 range determination unit 28 searches the topology DB 22 to identify the switch 10 to which the designated communication node 30 is connected (step S242). .

次に、ブロードキャスト範囲決定部28は、処理規則管理部26に対して、特定されたスイッチ10から指定された通信ノード30へブロードキャストパケットを転送する処理内容を持つパケットアウト規則の削除を指示する(ステップS243)。その後、処理規則管理部26は、指定された通信ノード30に関連する処理規則(例えば、ユニキャスト経路を実現するための処理規則)を削除する(ステップS244)。   Next, the broadcast range determination unit 28 instructs the processing rule management unit 26 to delete a packet-out rule having processing contents for transferring a broadcast packet from the specified switch 10 to the designated communication node 30 ( Step S243). Thereafter, the processing rule management unit 26 deletes a processing rule related to the designated communication node 30 (for example, a processing rule for realizing a unicast route) (step S244).

処理規則管理部26は、制御メッセージ処理部23及びノード通信部32を介して、FlowMod(DLL)メッセージを対応するスイッチ10に送信することで、処理規則を削除する。より具体的には、マッチングフィールドにおける送信元MACアドレスに停止が通知された通信ノード30のMACアドレスを、他のカラムにはワイルドカードを、それぞれ指定し、FlowMod(DLL)メッセージを用いて処理規則を削除する。   The processing rule management unit 26 deletes a processing rule by transmitting a FlowMod (DLL) message to the corresponding switch 10 via the control message processing unit 23 and the node communication unit 32. More specifically, the MAC address of the communication node 30 notified of the stop to the source MAC address in the matching field is specified, and a wild card is specified in the other columns, and the processing rule is set using a FlowMod (DLL) message. Is deleted.

図15は、制御装置20の動作の一例を示すフローチャートである。図15は、リソース管理情報を書き換えることで、テナントに属する通信ノード30の削除が、制御装置20に通知された場合の動作例を示す。   FIG. 15 is a flowchart illustrating an example of the operation of the control device 20. FIG. 15 shows an operation example when the control device 20 is notified of the deletion of the communication node 30 belonging to the tenant by rewriting the resource management information.

グループと、通信ノードが指定されて通信ノード30の削除が通知されると、ブロードキャスト範囲決定部28は、指定されたテナントにブロードキャスト経路が存在するか否かを判定する(ステップS251)。   When a group and a communication node are specified and deletion of the communication node 30 is notified, the broadcast range determination unit 28 determines whether or not a broadcast path exists in the specified tenant (step S251).

ブロードキャスト経路が存在しなければ(ステップ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 range determination unit 28 searches the topology DB 22 to identify the switch 10 to which the designated communication node 30 is connected (step S252). .

その後、ブロードキャスト範囲決定部28は、前ステップにおいて特定されたスイッチ10に指定されたテナントの他の通信ノード30が接続されているか否かを判定する(ステップS253)。特定されたスイッチ10に指定されたテナントの他の通信ノード30が既に接続されている場合(ステップS253、Yes分岐)には、処理を終了する。   Thereafter, the broadcast range determination unit 28 determines whether or not another communication node 30 of the tenant designated by the switch 10 specified in the previous step is connected (step S253). If another communication node 30 of the tenant specified by the identified switch 10 is already connected (step S253, Yes branch), the process ends.

ステップS254において、ブロードキャスト範囲決定部28は、処理規則管理部26に対して、ステップS252で特定したスイッチ10に設定されている処理規則(ブロードキャスト転送規則及びパケットアウト規則)の削除を指示する。テナントへの通信ノード30の割り当てが終了すると、削除された通信ノード30にブロードキャストパケットを転送する必要はない。そのため、削除しても影響がないブロードキャスト経路を削除する。   In step S254, the broadcast range determination unit 28 instructs the processing rule management unit 26 to delete the processing rules (broadcast transfer rule and packet out rule) set in the switch 10 specified in step S252. When the assignment of the communication node 30 to the tenant is completed, it is not necessary to transfer the broadcast packet to the deleted communication node 30. Therefore, a broadcast route that does not affect the deletion is deleted.

図16は、制御装置20の動作の一例を示すフローチャートである。図16は、リソース管理情報を書き換えることで、テナントの削除が、制御装置20に通知された場合の動作例を示す。   FIG. 16 is a flowchart illustrating an example of the operation of the control device 20. FIG. 16 shows an operation example when the control device 20 is notified of deletion of a tenant by rewriting resource management information.

テナントが指定されて、その削除が通知されると、ブロードキャスト範囲決定部28は、指定されたテナントにブロードキャスト経路が存在するか否かを判定する(ステップS261)。ブロードキャスト経路が存在しなければ(ステップS261、No分岐)、処理を終了する。   When the tenant is designated and the deletion is notified, the broadcast range determination unit 28 determines whether or not a broadcast route exists in the designated tenant (step S261). If there is no broadcast path (step S261, No branch), the process is terminated.

ステップS262において、ブロードキャスト範囲決定部28は、処理規則管理部26に対して、削除が通知されたテナントに関する処理規則の削除を指示する。このように、テナント自体が削除されてしまえば、当該テナントのために設けられたブロードキャスト経路は不要であるので、ブロードキャスト経路を実現する処理規則をスイッチ10から削除する。   In step S262, the broadcast range determination unit 28 instructs the processing rule management unit 26 to delete the processing rule related to the tenant notified of the deletion. In this way, if the tenant itself is deleted, the broadcast route provided for the tenant is unnecessary, so the processing rule for realizing the broadcast route is deleted from the switch 10.

図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 control device 20 to set a processing rule.

制御装置20の経路・アクション計算部24は、パケットヘッダ及びトポロジDB22が記憶するネットワークのトポロジを参照し、パケット転送経路を計算する。その後、処理規則管理部26は、計算されたパケット転送経路に応じてスイッチ10に設定する処理規則を生成する。処理規則管理部26は、生成した処理規則を、制御メッセージ処理部23及びノード通信部32を介してスイッチ10−1に設定する。より詳細には、スイッチ10−1が備えるテーブルDB13に新たなエントリを追加する(図17のFlowMod(ADD)メッセージを送信する)。   The route / action calculation unit 24 of the control device 20 refers to the network header stored in the packet header and the topology DB 22 and calculates a packet transfer route. Thereafter, the processing rule management unit 26 generates a processing rule to be set in the switch 10 according to the calculated packet transfer path. The processing rule management unit 26 sets the generated processing rule in the switch 10-1 via the control message processing unit 23 and the node communication unit 32. More specifically, a new entry is added to the table DB 13 included in the switch 10-1 (the FlowMod (ADD) message in FIG. 17 is transmitted).

制御装置20は、処理規則をスイッチ10−1に設定した後、スイッチ10−1にパケット(MesseageU1)を返却する(パケットアウトする)。   After setting the processing rule in the switch 10-1, the control device 20 returns a packet (MessageU1) to the switch 10-1 (packets out).

スイッチ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 control device 20 to set a processing rule with the broadcast packet. The broadcast range determination unit 28 searches the resource information DB 31 and the topology DB 22 to determine a range for transferring a broadcast packet, and instructs the route / action calculation unit 24 to calculate a broadcast route. Here, a broadcast path including the switches 10-1 and 10-2 is calculated.

その後、処理規則管理部26は、計算されたブロードキャスト経路に応じてスイッチ10−1及び10−2に設定する処理規則を生成する。より具体的には、スイッチ10−1に対しては、送信元MACアドレスが通信ノード30−1のMACアドレスを持つブロードキャストパケットを、スイッチ10−2に転送することを処理内容とする処理規則を設定する(ブロードキャスト転送規則を設定する)。さらに、スイッチ10−1に対して、送信元MACアドレスが通信ノード10−1のMACアドレスを持つブロードキャストパケットを、通信ノード30−2に送出することを処理内容とする処理規則を設定する(パケットアウト規則を設定する)。   Thereafter, the processing rule management unit 26 generates processing rules to be set in the switches 10-1 and 10-2 according to the calculated broadcast path. More specifically, for the switch 10-1, a processing rule whose processing content is to transfer a broadcast packet whose source MAC address has the MAC address of the communication node 30-1 to the switch 10-2. Set (set broadcast transfer rules). Further, a processing rule is set for the switch 10-1 whose processing content is to send a broadcast packet having a source MAC address of the communication node 10-1 to the communication node 30-2 (packet). Set out rules).

なお、スイッチ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 control device 20 returns a broadcast packet (MessageB1) to the switch 10-1. The switch 10-1 transfers the received packet to the communication node 30-2 and the switch 10-2 according to the set processing rule. Thereafter, the broadcast packet (Message B2) transmitted from the communication node 30-1 is transferred to the communication node 30-2 and the switch 10-2 according to the processing rule set in the switch 10-1.

図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 control device 20 additionally sets a packet-out rule in the switch 10-2. Since the processing rule for realizing the broadcast path from the switch 10-1 to the switch 10-2 is set in the switch 10-1, it is not necessary to set the broadcast transfer rule. That is, regarding the processing rule set in the switch 10-2, it is sufficient to add a processing rule for transferring a broadcast packet from the communication node 30-1 to the communication node 30-3.

その後、制御装置20は、通信ノード30−3に対して、稼働状態への遷移を指示する。通信ノード30−3が稼働状態に遷移した後は、通信ノード30−1が送信するブロードキャストパケットは、スイッチ10−1及び10−2を介して通信ノード30−2及び30−3に転送される。   Thereafter, the control device 20 instructs the communication node 30-3 to transition to the operating state. After the communication node 30-3 transitions to the operating state, the broadcast packet transmitted by the communication node 30-1 is transferred to the communication nodes 30-2 and 30-3 via the switches 10-1 and 10-2. .

図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 control device 20 deletes the packet-out rule set in the switch 10-1. Thereafter, the control device 20 instructs the communication node 30-2 to transition to the stop state. In the operation example of FIG. 21, the broadcast transfer rule (processing rule for transferring a broadcast packet from the switch 10-1 to the switch 10-2) set in the switch 10-1 is not deleted. This is because the switch 10-2 needs to transfer the broadcast packet to the communication node 30-3.

図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 control device 20 deletes the processing rules (broadcast transfer rules and packet out rules) set in the switches 10-1 and 10-2. Thereafter, the control device 20 shifts the communication nodes 30-1 to 30-3 assigned to the tenant to be deleted to a stopped state.

図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 control device 20 sets a processing rule (broadcast transfer rule) for transferring the broadcast packet transmitted by the communication node 30-1 to the switch 10-2 for the switch 10-1. Thereafter, the broadcast packet (Message B3 in FIG. 23) transmitted by the communication node 30-1 is transferred to the communication node 30-2 and the switch 10-2. In the operation example of FIG. 23, only the communication node 30 is added to the tenant, and since the operation of the communication node 30-3 is not instructed, no packet out rule is set for the switch 10-2.

図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 control device 20 sets a processing rule (broadcast transfer rule) that is a processing rule set in the switch 10-1 and forwards the broadcast packet transmitted from the communication node 30-1 to the switch 10-2. delete. Furthermore, the control device 20 also deletes the packet out rule set in the switch 10-2. Thereafter, the broadcast packet (Message B3 in FIG. 24) transmitted by the communication node 30-1 is transferred only to the communication node 30-2.

以上のように、本実施形態に係る制御装置20は、リソース(通信ノード30)のテナントへの割り当て及び動作状態を考慮して、ブロードキャスト範囲を決定し、スイッチ10に設定する処理規則を生成する。その結果、ブロードキャストパケットは、同一のグループ(テナント)に属する通信ノード30に限り転送されることになり、ネットワークの安全性が向上する。   As described above, the control device 20 according to the present embodiment determines a broadcast range in consideration of allocation of resources (communication node 30) to a tenant and an operation state, and generates a processing rule to be set in the switch 10. . As a result, the broadcast packet is transferred only to the communication nodes 30 belonging to the same group (tenant), and the security of the network is improved.

また、特許文献1が開示する技術は、特定のドメイン(サブネット)に、レイヤ2やレイヤ3に依存しない閉じたネットワークに適用するのが前提である。一方、本実施形態に係る通信システムでは、1つのドメイン(レイヤ2サブネット)に、レイヤ2やレイヤ3に依存しないネットワークを生成している。即ち、フローベーススイッチで形成されたネットワークに、複数のレイヤ2サブネットからなるテナントを複数包含させ、且つ、各テナントを独立させ、テナントに関連しないスイッチにはブロードキャストパケットを転送しない。   The technique disclosed in Patent Document 1 is premised on applying to a specific domain (subnet) in a closed network that does not depend on layer 2 or layer 3. On the other hand, in the communication system according to the present embodiment, a network independent of layer 2 or layer 3 is generated in one domain (layer 2 subnet). In other words, a network formed of flow-based switches includes a plurality of tenants composed of a plurality of layer 2 subnets, makes each tenant independent, and does not transfer broadcast packets to switches not related to the tenant.

また、制御装置20は、通信ノード30の動作状態を考慮し、将来、稼働する可能性のある通信ノード30装置が接続されるスイッチ10には、ブロードキャストパケットが転送されるように、処理規則を予め設定しておく。その結果、停止状態にある通信ノード30が稼働状態に遷移し、ブロードキャストパケットを転送する必要が生じた場合でも、低遅延でブロードキャストパケットを転送できる。   In addition, the control device 20 considers the operation state of the communication node 30 and sets a processing rule so that the broadcast packet is transferred to the switch 10 to which the communication node 30 device that may operate in the future is connected. Set in advance. As a result, even when the communication node 30 in the stopped state shifts to the operating state and the broadcast packet needs to be transferred, the broadcast packet can be transferred with low delay.

[第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 control device 20a and the management device 40 are added.

第2の実施形態に係る通信システムでは、管理装置40が、第1の実施形態において説明したリソース管理情報を取り扱う。より具体的には、管理装置40は、通信システムの管理者等が入力するテナント管理情報に基づき、テナントの追加及び削除、テナントへのリソースの追加及び削除、テナントに割り当てられているリソースの稼働及び停止、を管理する。即ち、テナント管理情報とは、テナントの追加等を明示する情報であって、管理装置40の外部から入力される情報である。管理装置40は、テナント管理情報の変更を認識すると、通信システムの運用状況が変更となったものとして、制御装置20aに対し、リソース管理情報変更通知を行う。リソース管理情報変更通知を受信した制御装置20aは、当該通知に応じて、ブロードキャスト経路の有無等を判定し、適宜、スイッチ10に処理規則を設定する。   In the communication system according to the second embodiment, the management device 40 handles the resource management information described in the first embodiment. More specifically, the management device 40 adds and deletes tenants, adds and deletes resources to the tenant, and operates resources allocated to the tenant based on tenant management information input by a communication system administrator or the like. And stop. That is, the tenant management information is information that clearly indicates addition of a tenant and the like, and is information that is input from the outside of the management apparatus 40. When the management device 40 recognizes the change of the tenant management information, the management device 40 notifies the control device 20a that the resource management information has been changed, assuming that the operation status of the communication system has changed. The control device 20a that has received the resource management information change notification determines the presence / absence of a broadcast path in accordance with the notification, and sets processing rules in the switch 10 as appropriate.

また、制御装置20aは、ブロードキャスト範囲を決定する際に、管理装置40に対して、リソース管理情報提供要求を行う。このリソース管理情報提供要求は、第1の実施形態において説明したリソース管理情報の提供を管理装置40に要求するものである。制御装置20aは、リソース管理情報提供要求に対する応答に基づいて、ブロードキャスト範囲を決定する。   Further, when determining the broadcast range, the control device 20a makes a resource management information provision request to the management device 40. This resource management information provision request requests the management apparatus 40 to provide the resource management information described in the first embodiment. The control device 20a determines the broadcast range based on a response to the resource management information provision request.

管理装置40は、通信ノード30−1〜30−5の管理を行う装置である。具体的には、通信システムへのテナントの追加と削除、テナントへのリソースの追加と削除、リソースの稼働と停止を管理する。   The management device 40 is a device that manages the communication nodes 30-1 to 30-5. Specifically, it manages the addition and deletion of tenants to the communication system, the addition and deletion of resources to the tenant, and the operation and stoppage of resources.

図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 control device 20a. In FIG. 26, the same components as those in FIG. The difference between the control device 20 and the control device 20a is that the resource information DB 31 does not exist and the operations of the broadcast range determination unit 28a and the configuration change processing unit 29a are the broadcast range determination unit 28 and the configuration change processing unit 29, respectively. It is a different point.

ブロードキャスト範囲決定部28aは、リソース情報DB31を検索することに代えて、管理装置40にリソース管理情報提供要求を行う。ブロードキャスト範囲決定部28aは、管理装置40からの応答に基づいて、ブロードキャストパケットの転送範囲を定める。より具体的には、ブロードキャスト範囲決定部28aは、第1の実施形態におけるリソース管理情報に相当する情報が必要となる場合に、管理装置40に対してリソース管理情報提供要求を行う。その後、管理装置40からのリソース管理情報提供要求に対する応答に基づき、ブロードキャスト範囲を決定する。また、ブロードキャスト範囲決定部28aは、上述のリソース管理情報変更通知を受信した場合に、必要に応じて、スイッチ10に処理規則(ブロードキャスト転送規則及びパケットアウト規則)を設定する。さらに、ブロードキャスト範囲決定部28aは、リソース管理情報変更通知に応答することで、スイッチ10に処理規則を設定した旨を管理装置40に通知する。   The broadcast range determination unit 28a makes a resource management information provision request to the management device 40 instead of searching the resource information DB 31. The broadcast range determination unit 28a determines the transfer range of the broadcast packet based on the response from the management device 40. More specifically, the broadcast range determination unit 28a makes a resource management information provision request to the management apparatus 40 when information corresponding to the resource management information in the first embodiment is required. Thereafter, the broadcast range is determined based on a response to the resource management information provision request from the management device 40. In addition, when receiving the above-described resource management information change notification, the broadcast range determination unit 28a sets processing rules (broadcast transfer rules and packet out rules) in the switch 10 as necessary. Further, the broadcast range determination unit 28a notifies the management device 40 that the processing rule has been set in the switch 10 by responding to the resource management information change notification.

構成変更処理部29aは、リソース管理情報変更通知に基づいて、トポロジDB22の更新を行う。なお、第1の実施形態に係る制御装置20は、構成変更処理部29を使用して通信ノード30の動作状態を管理する。第2の実施形態においては、管理装置40が、通信ノード30の制御し、管理する。そのため、制御装置20aの構成変更処理部29aは、通信ノード30の動作状態を制御する機能を有さない。   The configuration change processing unit 29a updates the topology DB 22 based on the resource management information change notification. Note that the control device 20 according to the first embodiment manages the operation state of the communication node 30 using the configuration change processing unit 29. In the second embodiment, the management device 40 controls and manages the communication node 30. Therefore, the configuration change processing unit 29a of the control device 20a does not have a function of controlling the operation state of the communication node 30.

図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 management apparatus 40. The management device 40 includes a resource change processing unit 41, a resource management unit 42, a resource database (resource DB) 43, an allocation plan unit 44, an allocation resource database (allocation resource DB) 45, and an operating resource determination unit 46 A tenant resource database (tenant resource DB) 47, a release processing execution unit 48, and a communication unit 49 that communicates with the control device 20a, the communication node 30, and a terminal (not shown in FIG. 25). Is done.

リソース変更処理部41は、通信部49を介して、外部よりテナント管理情報を受け付ける。より具体的には、通信システムの管理者は、図25に図示しない端末等を用いてテナント管理情報を管理装置40に入力する。リソース変更処理部41は、テナント管理情報に応じた処理(例えば、テナントに割り当てるリソースの追加等)を実行した後、通信部49を介して、テナント管理情報に対する応答を行う。例えば、テナント管理情報が、テナントへのリソースの追加に係る要求の場合には、リソース変更処理部41は当該要求を正常に処理したか否かを応答する。   The resource change processing unit 41 receives tenant management information from the outside via the communication unit 49. More specifically, the administrator of the communication system inputs tenant management information to the management apparatus 40 using a terminal or the like not shown in FIG. The resource change processing unit 41 performs a process corresponding to the tenant management information (for example, addition of a resource to be allocated to the tenant), and then responds to the tenant management information via the communication unit 49. For example, when the tenant management information is a request related to addition of a resource to a tenant, the resource change processing unit 41 responds whether or not the request has been processed normally.

リソース変更処理部41は、テナント管理情報に従い、テナントの追加と削除、各テナントへのリソースの追加と削除、テナントに割り当てたリソースの稼働と停止、を制御する。より具体的には、リソース変更処理部41は、割り当て計画部44、稼働リソース決定部46又は解放処理実行部48のいずれかに対し、リソースの追加や削除等を指示する。また、リソース変更処理部41は、テナント管理情報と各部(割り当て計画部44等)に行った指示に対する応答に基づき、制御装置20aに対し、リソース管理情報変更通知を行う。   The resource change processing unit 41 controls addition / deletion of tenants, addition / deletion of resources to / from each tenant, and operation / stop of resources allocated to the tenant according to the tenant management information. More specifically, the resource change processing unit 41 instructs one of the allocation planning unit 44, the operating resource determination unit 46, and the release processing execution unit 48 to add or delete resources. Further, the resource change processing unit 41 issues a resource management information change notification to the control device 20a based on tenant management information and a response to an instruction given to each unit (the allocation planning unit 44 and the like).

さらに、リソース変更処理部41は、テナント管理情報と制御装置20aから応答に応じて、リソース管理部42に対し、リソースの稼働又は停止に係る指示を行う。   Further, the resource change processing unit 41 instructs the resource management unit 42 to operate or stop the resource in response to the response from the tenant management information and the control device 20a.

さらにまた、リソース変更処理部41は、通信部49を介して、制御装置20aからリソース管理情報提供要求を受信した場合には、各種のデータベースを検索し、リソースの割り当て状況や稼働状態を制御装置20aに応答する。   Furthermore, when the resource change processing unit 41 receives a resource management information provision request from the control device 20a via the communication unit 49, the resource change processing unit 41 searches various databases, and determines the resource allocation status and operating state. Responds to 20a.

リソース管理部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 change processing unit 41. More specifically, the resource management unit 42 transmits a control message to the communication node 30 to change the operation state of the communication node 30. After changing the operation state of the communication node 30, the resource management unit 42 responds to the resource change processing unit 41 that the control of the communication node 30 has ended.

リソースDB43は、通信システム全体に含まれる通信ノード30(システムのリソース)に関する情報を記憶するデータベースである。   The resource DB 43 is a database that stores information related to the communication nodes 30 (system resources) included in the entire communication system.

図28は、リソースDB43のエントリの一例を示す図である。リソースDB43のエントリは、通信システム全体に含まれるリソースを一意に識別するためのIDを格納するリソースIDフィールドと、リソースの種別(例えば、計算機、仮想マシン等)を示すリソース種別フィールドと、当該リソースが既にテナントに割り当てられているか否かを示す割り当てフラグと、その他リソースの属性を示すリソース属性フィールドと、を含んでいる。なお、リソースの属性には、当該リソースのMACアドレスが含まれる。リソースの属性にMACアドレスを含ませることにより、管理装置40から制御装置20aにリソースの稼働等を通知する際に、MACアドレスの検索を省略できる。あるいは、リソースを識別するためのIDとしてMACアドレスを使用してもよい。   FIG. 28 is a diagram illustrating an example of entries in the resource DB 43. The entry of the resource DB 43 includes a resource ID field for storing an ID for uniquely identifying a resource included in the entire communication system, a resource type field indicating a resource type (for example, a computer, a virtual machine, etc.), and the resource Includes an allocation flag indicating whether or not the resource has already been allocated to the tenant, and a resource attribute field indicating other resource attributes. The resource attribute includes the MAC address of the resource. By including the MAC address in the resource attribute, the search of the MAC address can be omitted when the management device 40 notifies the control device 20a of the resource operation or the like. Alternatively, a MAC address may be used as an ID for identifying a resource.

リソースDB43のエントリは、通信システム全体に含まれるリソースが変更(リソースの追加又は削除)されることに応じて、更新される。   The entry in the resource DB 43 is updated in response to a change in resources (addition or deletion of resources) included in the entire communication system.

割り当て計画部44は、リソース変更処理部41の指示に従い、テナントに割り当てるリソースを決定する手段である。割り当て計画部44は、指定されたテナントにリソースの割り当てが行えたか否かを、リソース変更処理部41に応答する。割り当て計画部44は、リソースDB43を検索し、テナントに割り当てるリソースが存在する判断すれば、当該リソースに関する情報を割り当てリソースDB45に登録する。なお、以降の説明において、割り当て計画部44が実行する処理を、リソース割り当て計画と表記する。   The allocation planning unit 44 is means for determining a resource to be allocated to a tenant according to an instruction from the resource change processing unit 41. The allocation planning unit 44 responds to the resource change processing unit 41 as to whether or not the resource has been allocated to the designated tenant. If the allocation planning unit 44 searches the resource DB 43 and determines that there is a resource to be allocated to the tenant, the allocation planning unit 44 registers information on the resource in the allocation resource DB 45. In the following description, the process executed by the allocation planning unit 44 is referred to as a resource allocation plan.

割り当てリソースDB45は、割り当て計画部44がテナントに割り当てたリソースを記憶するデータベースである。   The allocation resource DB 45 is a database that stores resources allocated to tenants by the allocation planning unit 44.

図29は、割り当てリソースDB45のエントリの一例を示す図である。割り当てリソースDB45のエントリは、リソースの割り当て先のテナントを示すテナントIDフィールドと、割り当てられたリソースに関する情報を示すリソース情報フィールドと、を含んでいる。なお、リソース情報フィールドには、リソースを識別するリソースIDと、当該リソースの動作状態(稼働状態又は停止状態)を示す動作状態フラグと、が格納される。例えば、テナントにリソースが割り当てられていたとしても、当該リソースが停止状態にあれば、当該リソースに対応する動作状態フラグは、「偽(停止状態)」とする。   FIG. 29 is a diagram illustrating an example of entries in the allocation resource DB 45. The entry of the allocated resource DB 45 includes a tenant ID field that indicates a tenant to which resources are allocated, and a resource information field that indicates information related to the allocated resources. In the resource information field, a resource ID for identifying a resource and an operation state flag indicating the operation state (operating state or stopped state) of the resource are stored. For example, even if a resource is allocated to a tenant, if the resource is in a stopped state, the operation state flag corresponding to the resource is “false (stopped state)”.

稼働リソース決定部46は、リソース変更処理部41の指示に従い、テナントに割り当てられているリソースの中から稼働させるリソースを決定する手段である。その際、リソース変更処理部41は、稼働リソース決定部46に対し、テナントと稼働させるリソースの数が指定する。稼働リソース決定部46は、指定された数のリソースを稼働させることが行えたか否かをリソース変更処理部41に応答する。稼働リソース決定部46は、割り当てリソースDB45を検索し、指定されたテナントに割り当てられたリソースの中から稼働させるリソースを決定する。稼働リソース決定部46は、稼働させるリソースを決定した後、当該リソースをテナントリソースDB47に登録する。   The operating resource determination unit 46 is a means for determining a resource to be operated from among resources allocated to the tenant in accordance with an instruction from the resource change processing unit 41. At that time, the resource change processing unit 41 designates the number of resources to be operated with the tenant to the operation resource determination unit 46. The operating resource determination unit 46 responds to the resource change processing unit 41 as to whether or not the specified number of resources can be operated. The operating resource determination unit 46 searches the allocated resource DB 45 and determines a resource to be operated from among resources allocated to the designated tenant. After determining the resource to be operated, the operating resource determination unit 46 registers the resource in the tenant resource DB 47.

テナントリソースDB47は、テナントに属するリソースであって、稼働中のリソースを記憶するデータベースである。   The tenant resource DB 47 is a database that is a resource belonging to the tenant and stores resources that are in operation.

図30は、テナントリソースDB47のエントリの一例を示す図である。テナントリソースDB47のエントリは、テナントを示すテナントIDフィールドと、当該テナントに割り当てられ、且つ、稼働しているリソースを示す複数のリソースIDフィールドと、を含む。   FIG. 30 is a diagram illustrating an example of entries in the tenant resource DB 47. The entry of the tenant resource DB 47 includes a tenant ID field indicating a tenant and a plurality of resource ID fields indicating resources that are allocated to the tenant and are operating.

解放処理実行部48は、リソース変更処理部41の指示に従い、テナントに割り当てられているリソースであって、稼働中のリソースを停止する手段である。その際、リソース変更処理部41は、解放処理実行部48に対し、テナントと停止させるリソースの数を指定する。また、解放処理実行部48は、テナントの削除に係る指示を受けると、当該テナントに割り当て済みのリソースを未割り当てとする手段でもある。なお、以降の説明において、解放処理実行部48が実行する処理であって、稼働中のリソースを停止する処理を、リソース解放計画と表記する。   The release processing execution unit 48 is a means for stopping resources that are allocated to tenants and are in operation according to instructions from the resource change processing unit 41. At that time, the resource change processing unit 41 designates the number of resources to be stopped with the tenant to the release processing execution unit 48. Further, the release process execution unit 48 is a unit that unassigns resources already assigned to the tenant when receiving an instruction related to deletion of the tenant. In the following description, a process that is executed by the release process execution unit 48 and stops an active resource is referred to as a resource release plan.

なお、図26、図27に示した制御装置20a、管理装置40の各部(処理手段)は、これらの装置を構成するコンピュータに、そのハードウェアを用いて、後述する各処理を実行させるコンピュータプログラムにより実現することもできる。   Note that each unit (processing unit) of the control device 20a and the management device 40 illustrated in FIGS. 26 and 27 is a computer program that causes a computer that configures these devices to execute each process described below using the hardware. Can also be realized.

次に、制御装置20aの動作について説明する。   Next, the operation of the control device 20a will be described.

なお、制御装置20aがスイッチ10からパケットを受け取った際の動作は、図10を用いて説明した動作と相違する点は存在しないので、さらなる説明を省略する。   The operation when the control device 20a receives a packet from the switch 10 does not differ from the operation described with reference to FIG.

図31は、制御装置20aの動作の一例を示すフローチャートである。図31は、図11を用いて説明した動作に相当する動作例を示す。図11と図31の相違点は、ステップS207aに係る処理である。   FIG. 31 is a flowchart illustrating an example of the operation of the control device 20a. FIG. 31 shows an operation example corresponding to the operation described with reference to FIG. The difference between FIG. 11 and FIG. 31 is the processing according to step S207a.

ステップS207aにおいて、ブロードキャスト範囲決定部28aは、受信したブロードキャストパケットを転送するスイッチ10及びその接続ポートを決定する(ブロードキャスト範囲を決定する)。ブロードキャスト範囲決定部28aは、ブロードキャスト範囲の決定に必要なリソース管理情報の提供を、管理装置40に要求する。ブロードキャスト範囲決定部28aは、管理装置40から得られる情報に基づいて、ブロードキャスト範囲を決定する。   In step S207a, the broadcast range determining unit 28a determines the switch 10 that forwards the received broadcast packet and its connection port (determines the broadcast range). The broadcast range determination unit 28a requests the management apparatus 40 to provide resource management information necessary for determining the broadcast range. The broadcast range determination unit 28a determines the broadcast range based on information obtained from the management device 40.

図32は、ブロードキャスト範囲決定部28aの動作の一例を示すフローチャートである。   FIG. 32 is a flowchart showing an example of the operation of the broadcast range determining unit 28a.

ステップS2071において、ブロードキャスト範囲決定部28aは、管理装置40に対して、ブロードキャストパケットを送信する通信ノード30が属するテナントを指定して、当該テナントに関するリソース管理情報提供要求を行い、その応答を待つ(ステップS2072)。   In step S2071, the broadcast range determination unit 28a designates the tenant to which the communication node 30 that transmits the broadcast packet belongs to the management apparatus 40, makes a resource management information provision request regarding the tenant, and waits for a response ( Step S2072).

ブロードキャスト範囲決定部28aは、リソース管理情報提供要求に対する応答とトポロジDB22が記憶するネットワークのトポロジと、からブロードキャストパケットの転送に使用するスイッチ10を特定する(ステップS2073)。その後、ブロードキャスト範囲決定部28aは、テナントに割り当てられた通信ノード30(リソース)が接続されたスイッチ10とそのポートを、トポロジDB22を検索することで、特定する(ステップS2074)。本ステップで特定するスイッチ10及びその接続ポートが、ブロードキャスト範囲に相当する。なお、ステップS2072における管理装置40側の動作は、後述する。   The broadcast range determination unit 28a identifies the switch 10 used for forwarding the broadcast packet from the response to the resource management information provision request and the network topology stored in the topology DB 22 (step S2073). Thereafter, the broadcast range determining unit 28a specifies the switch 10 and its port to which the communication node 30 (resource) assigned to the tenant is connected by searching the topology DB 22 (step S2074). The switch 10 and its connection port specified in this step correspond to the broadcast range. The operation on the management apparatus 40 side in step S2072 will be described later.

図33〜図37は、それぞれ、図12〜図16に相当する制御装置20aの動作の一例を示すフローチャートである。図33〜図37において、図12〜図16と同一の処理に関しては、同一のステップ名を与え、説明を省略する。対応する図面間の相違点は、各図に示す処理を終了する直前に、管理装置40に対して応答する点である。   33 to 37 are flowcharts showing an example of the operation of the control device 20a corresponding to FIGS. 12 to 16, respectively. 33 to 37, the same step names are assigned to the same processes as those in FIGS. 12 to 16, and the description thereof is omitted. The difference between the corresponding drawings is that a response is made to the management apparatus 40 immediately before the processing shown in each drawing is finished.

管理装置40は、通信システムの運用状況の変化(テナント管理情報の変化;即ち、テナントの追加と削除、テナントへのリソースの追加と削除、リソースの稼働と停止)に応じて、変化した内容を制御装置20aに通知する(リソース管理情報変更通知を行う)。制御装置20aでは、管理装置40からの通知に従い、適切な処理(例えば、ブロードキャスト転送規則の設定等)を行い、当該処理が終了した旨を管理装置40に応答する。応答を受けた管理装置40は、必要に応じて、リソース(通信ノード30)の制御及び管理を行う。   The management device 40 displays the changed contents according to the change in the operation status of the communication system (change in tenant management information; that is, addition and deletion of tenants, addition and deletion of resources to the tenant, operation and stop of resources). Notify the control device 20a (perform resource management information change notification). In accordance with the notification from the management device 40, the control device 20a performs appropriate processing (for example, setting of a broadcast transfer rule) and responds to the management device 40 that the processing has been completed. Upon receiving the response, the management device 40 controls and manages the resource (communication node 30) as necessary.

図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 control device 20a when the management device 40 notifies the operation of the communication node 30 assigned to the tenant. In this case, the control device 20a operates so that the broadcast packet is transferred to the communication node 30 that has been notified of the operation by executing the processes according to steps S221 to S224. More specifically, the control device 20 a sets a packet out rule in the switch 10.

その後、ステップS225において、制御装置20aは、管理装置40に対して、稼働が通知された通信ノード30に対するブロードキャストパケットを転送する準備が完了した旨を応答する。応答を受けた管理装置40のリソース管理部42は、通信ノード30に制御メッセージを送信し、通信ノード30を稼働状態に遷移させる。その際、既に、スイッチ10にはブロードキャストパケットを転送するための処理規則(ブロードキャスト転送規則及びパケットアウト規則)が設定されているため、稼働を開始した通信ノード30にブロードキャストパケットが転送される。   Thereafter, in step S225, the control device 20a responds to the management device 40 that the preparation for transferring the broadcast packet to the communication node 30 notified of the operation is completed. The resource management unit 42 of the management device 40 that has received the response transmits a control message to the communication node 30 and causes the communication node 30 to transition to the operating state. At this time, since processing rules (broadcast transfer rules and packet-out rules) for transferring broadcast packets are already set in the switch 10, the broadcast packets are transferred to the communication node 30 that has started operation.

次に、管理装置40の動作について説明する。   Next, the operation of the management device 40 will be described.

図38〜図44は、管理装置40の動作の一例を示すフローチャートである。   38 to 44 are flowcharts illustrating an example of the operation of the management apparatus 40.

図38は、テナントを登録する際の管理装置40の動作例を示す。   FIG. 38 shows an operation example of the management apparatus 40 when registering a tenant.

管理装置40にテナントを登録する際は、テナントIDと、当該テナントに割り当てるリソースの数(最大値)が、テナント管理情報により指定される。リソース変更処理部41は、このようなテナント管理情報を受け付けると、割り当て計画部44に、リソース割り当て計画を実行させる(ステップS401)。より具体的には、割り当て計画部44は、リソースDB43に登録されているリソース(通信システム全体に含まれるリソース)から、テナントに割り当てるリソースを決定する。割り当て計画部44は、要求されたリソースを割り当てることができるか否かを判定する(ステップS402)。   When a tenant is registered in the management apparatus 40, the tenant ID and the number (maximum value) of resources allocated to the tenant are specified by the tenant management information. Upon receiving such tenant management information, the resource change processing unit 41 causes the allocation planning unit 44 to execute a resource allocation plan (step S401). More specifically, the allocation planning unit 44 determines a resource to be allocated to a tenant from resources registered in the resource DB 43 (resources included in the entire communication system). The allocation planning unit 44 determines whether or not the requested resource can be allocated (step S402).

例えば、リソースDB43に登録されているリソースであって、未割り当てのリソースの数が、割り当てを要求されたリソースの数に満たないなどの理由により、テナントにリソースの割り当てができなければ(ステップS402、No分岐)、ステップS403に係る処理が実行される。テナントにリソースの割り当てができれば(ステップS402、Yes分岐)、ステップS404及び405に係る処理が実行される。   For example, if a resource is registered in the resource DB 43 and the number of unallocated resources is less than the number of resources requested to be allocated, the resource cannot be allocated to the tenant (step S402). , No branch), the processing according to step S403 is executed. If resources can be allocated to the tenant (step S402, Yes branch), the processing according to steps S404 and 405 is executed.

ステップS403において、割り当て計画部44は、リソース変更処理部41に対して、リソースを割り当てることができない旨を応答する。リソース変更処理部41は、通信部49を介して、テナントの登録ができない旨を応答する(例えば、テナント管理情報を入力する端末にリソース割り当て不可を応答する)。   In step S403, the allocation planning unit 44 responds to the resource change processing unit 41 that resources cannot be allocated. The resource change processing unit 41 responds that the tenant cannot be registered via the communication unit 49 (for example, responds to the terminal that inputs tenant management information that the resource cannot be allocated).

ステップS404において、割り当て計画部44は、リソースDB43のエントリの中のステップS401で決定したリソースに対応する割り当てフラグを、「割り当て済み」に変更する。その後、割り当て計画部44は、割り当てリソースDB45のテナントIDフィールドと、リソース情報フィールドを、テナントに割り当てたリソースに基づいて更新する(ステップS405)。   In step S404, the allocation planning unit 44 changes the allocation flag corresponding to the resource determined in step S401 in the entry of the resource DB 43 to “allocated”. Thereafter, the allocation planning unit 44 updates the tenant ID field and the resource information field of the allocation resource DB 45 based on the resource allocated to the tenant (step S405).

なお、ステップS401において、割り当て計画部44が実行するリソース割り当て計画には種々の方法が考えられる。例えば、指定されたリソースの数だけランダムに確保する方法、ネットワークの距離を考慮し同一のスイッチ10に接続されたリソース単位で割り当てる方法、ネットワークのホップ数が少ないリソースを選択して選ぶ方法、ラック単位で割り当てる方法、可用性を考慮し2つ以上のラックに分けて割り当てる方法、等が考えられる。割り当て計画部44は、いずれの方法を、又は、上記以外の方法を用いて、テナントに割り当てるリソースを決定する。   In step S401, various methods are conceivable for the resource allocation plan executed by the allocation planning unit 44. For example, a method of randomly securing a specified number of resources, a method of allocating in units of resources connected to the same switch 10 in consideration of a network distance, a method of selecting and selecting a resource having a small number of network hops, a rack A method of allocating in units, a method of allocating to two or more racks in consideration of availability, and the like are conceivable. The allocation planning unit 44 determines a resource to be allocated to the tenant using any method or a method other than the above.

図39は、リソースを稼働する際の管理装置40の動作例を示す。リソースの稼働は、テナントとジョブが指定されることで行われる。   FIG. 39 shows an operation example of the management apparatus 40 when operating resources. Resource operation is performed by specifying a tenant and a job.

リソース変更処理部41は、稼働リソース決定部46に対し、テナント及びジョブ(リソースが提供するサービス)を指定して、稼働するリソースの決定を指示する。   The resource change processing unit 41 designates a tenant and a job (service provided by the resource) and instructs the operating resource determination unit 46 to determine the operating resource.

稼働リソース決定部46は、割り当てリソースDB45を検索し、指定されたテナントに動作状態フラグが「偽」(リソースは停止状態)のリソースが存在するか否かを確認する(ステップS411)。   The operating resource determination unit 46 searches the allocated resource DB 45 and checks whether or not there is a resource whose operation state flag is “false” (resource is in a stopped state) in the designated tenant (step S411).

テナントに割り当てられたリソースであって、停止状態のリソースが存在しなければ(ステップ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 resource determination unit 46 notifies the resource change processing unit 41 that there is no resource in the stopped state, so that the operation of the resource in the designated tenant is impossible, and ends the process. The resource change processing unit 41 responds via the communication unit 49 that the resource cannot be operated.

ステップS413において、稼働リソース決定部46は、指定されたテナントの動作状態フラグが「偽」のリソースから、稼働するリソースを選択する。   In step S413, the operating resource determination unit 46 selects an operating resource from the resources whose operation status flag of the designated tenant is “false”.

次に、稼働リソース決定部46は、前ステップで決定したリソースに対応した割り当てリソースDB45の動作状態フラグを「真」(リソースは稼働状態)に変更する(ステップS414)。また、稼働リソース決定部46は、テナントリソースDB47のエントリに、該当リソースのリソースIDを追加する(ステップS415)。   Next, the operating resource determination unit 46 changes the operating state flag of the allocated resource DB 45 corresponding to the resource determined in the previous step to “true” (the resource is operating) (step S414). In addition, the operating resource determination unit 46 adds the resource ID of the corresponding resource to the entry of the tenant resource DB 47 (step S415).

稼働リソース決定部46は、テナントIDと稼働するリソースのMACアドレスを、リソース変更処理部41に応答する。応答を受けたリソース変更処理部41は、制御装置20aに対して、テナントIDと稼働するリソースのMACアドレスを含むリソース管理情報変更通知を行う(ステップS416)。その後、リソース変更処理部41は、制御装置20aからの応答を待ち(ステップS417)、リソース管理部42に対し、ステップS413で決定したリソースの稼働を指示する(ステップS418)。   The operating resource determination unit 46 responds to the resource change processing unit 41 with the tenant ID and the MAC address of the operating resource. Receiving the response, the resource change processing unit 41 notifies the control device 20a of resource management information change including the tenant ID and the MAC address of the operating resource (step S416). Thereafter, the resource change processing unit 41 waits for a response from the control device 20a (step S417), and instructs the resource management unit 42 to operate the resource determined in step S413 (step S418).

図40は、リソースを停止する際の管理装置40の動作例を示す。リソースの停止は、テナントと停止するリソースが指定されることで行われる。   FIG. 40 shows an operation example of the management apparatus 40 when stopping resources. The resource is stopped by specifying the tenant and the resource to be stopped.

リソース変更処理部41は、制御装置20aに対し、テナントと停止するリソースを含むリソース管理情報変更通知を行う(ステップS421)。その後、リソース変更処理部41は、制御装置20aからの応答を待ち(ステップS422)、応答を受け取り次第、リソース管理部42に対し、停止すべきリソースの停止を指示する(ステップS423)。リソース管理部42は、停止すべきリソースに制御メッセージを送信し、停止状態への遷移を指示する。   The resource change processing unit 41 notifies the control device 20a of resource management information change including the tenant and the resource to be stopped (step S421). Thereafter, the resource change processing unit 41 waits for a response from the control device 20a (step S422), and upon receiving the response, instructs the resource management unit 42 to stop the resource to be stopped (step S423). The resource management unit 42 transmits a control message to the resource to be stopped and instructs the transition to the stopped state.

リソース管理部42は、リソースが停止するまで待機(ステップS424)し、その後、リソースの状態変化が終了した旨をリソース変更処理部41に応答する。   The resource management unit 42 waits until the resource stops (step S424), and then responds to the resource change processing unit 41 that the state change of the resource is completed.

応答を受けたリソース変更処理部41は、解放処理実行部48に対し、指定されたテナントの指定されたリソースを削除する指示を行う(ステップS425)。解放処理実行部48は、テナントリソースDB47のエントリから、指定されたテナントの指定されたリソースを削除する。その後、解放処理実行部48は、割り当てリソースDB45のエントリであって、指定されたリソースに対応するリソース情報フィールドの動作状態フラグを停止状態に変更する(ステップS426)。   Receiving the response, the resource change processing unit 41 instructs the release processing execution unit 48 to delete the specified resource of the specified tenant (step S425). The release processing execution unit 48 deletes the specified resource of the specified tenant from the entry of the tenant resource DB 47. Thereafter, the release processing execution unit 48 changes the operation state flag of the resource information field corresponding to the designated resource, which is an entry of the allocated resource DB 45, to the stopped state (step S426).

図41は、テナントにリソースを追加する際の管理装置40の動作例を示す。テナントと追加するリソース数を指定することで、リソースの追加が行われる。   FIG. 41 shows an operation example of the management apparatus 40 when adding a resource to a tenant. By specifying the tenant and the number of resources to be added, resources are added.

リソース変更処理部41は、テナントと、追加するリソース数を指定し、割り当て計画部44に対し、リソースの追加を指示する。指示を受けた割り当て計画部44は、指示された数のリソースを、リソースDB43のエントリの中から選択する。その際、割り当て計画部44は、割り当てフラグが「未割り当て」のリソースを選択することで、リソースの追加指示に対応する(ステップS431)。割り当て計画部44は、要求されたリソースを割り当てることができるか否かを判定する(ステップS432)。   The resource change processing unit 41 designates the tenant and the number of resources to be added, and instructs the allocation planning unit 44 to add resources. Upon receiving the instruction, the allocation planning unit 44 selects the specified number of resources from the entries in the resource DB 43. At that time, the allocation planning unit 44 responds to the resource addition instruction by selecting a resource whose allocation flag is “unallocated” (step S431). The allocation planning unit 44 determines whether or not the requested resource can be allocated (step S432).

指定された数のリソースが割り当てることができない場合(ステップ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 allocation planning unit 44 responds to the resource change processing unit 41 that the resource cannot be added to the designated tenant. The resource change processing unit 41 responds via the communication unit 49 that the resource cannot be added.

ステップS434において、割り当て計画部44は、ステップS431で決定したリソースに対応する割り当てフラグを「割り当て済み」に変更する(リソースDB43を変更する)。その後、割り当て計画部44は、割り当てたリソースを、割り当てリソースDB45のテナントIDフィールドと、リソース情報フィールドに格納する(割り当てリソースDB45に登録;ステップS435)。   In step S434, the allocation planning unit 44 changes the allocation flag corresponding to the resource determined in step S431 to “allocated” (changes the resource DB 43). Thereafter, the allocation planning unit 44 stores the allocated resources in the tenant ID field and the resource information field of the allocated resource DB 45 (registered in the allocated resource DB 45; step S435).

次に、割り当て計画部44は、リソース変更処理部41に対し、テナントIDと追加するリソースのMACアドレスを応答する。リソース変更処理部41は、テナントIDと追加するリソースのMACアドレスを含むリソース管理情報変更通知を、制御装置20aに行う(ステップS436)。その後、リソース変更処理部41は、制御装置20aからの応答を待つ(ステップS437)。   Next, the allocation planning unit 44 responds to the resource change processing unit 41 with the tenant ID and the MAC address of the resource to be added. The resource change processing unit 41 sends a resource management information change notification including the tenant ID and the MAC address of the resource to be added to the control device 20a (step S436). Thereafter, the resource change processing unit 41 waits for a response from the control device 20a (step S437).

図42は、テナントからリソースを削除する際の管理装置40の動作例を示す。   FIG. 42 shows an operation example of the management apparatus 40 when deleting a resource from a tenant.

リソース変更処理部41は、テナントを指定し、解放処理実行部48にリソースの削除を指示する(ステップS441)。解放処理実行部48は、リソース解放計画を実行し、指定されたテナントに対応する割り当てリソースDB45の中から、削除するリソースをから選択する。なお、本ステップにおいて、解放処理実行部48は、停止状態のサーバを削除対象として選択する。解放処理実行部48は、選択したリソースをリソース変更処理部41に応答する。   The resource change processing unit 41 designates a tenant and instructs the release processing execution unit 48 to delete the resource (step S441). The release process execution unit 48 executes the resource release plan and selects a resource to be deleted from the allocated resource DB 45 corresponding to the designated tenant. In this step, the release processing execution unit 48 selects a stopped server as a deletion target. The release processing execution unit 48 responds to the resource change processing unit 41 with the selected resource.

リソース変更処理部41は、テナントと前ステップで決定したリソースを指定し、制御装置20aにリソース管理情報変更通知を行う(ステップS442)。その後、リソース変更処理部41は、制御装置20aからの応答を待つ(ステップS443)。応答を受信したリソース変更処理部41は、解放処理実行部48に対し、割り当てリソースDB45から、ステップS441で決定したリソースに関するリソース情報の削除を指示する(ステップS444)。   The resource change processing unit 41 designates the tenant and the resource determined in the previous step, and sends a resource management information change notification to the control device 20a (step S442). Thereafter, the resource change processing unit 41 waits for a response from the control device 20a (step S443). The resource change processing unit 41 that has received the response instructs the release processing execution unit 48 to delete the resource information related to the resource determined in step S441 from the allocation resource DB 45 (step S444).

次に、解放処理実行部48は、ステップS441において決定したリソースに該当するリソースの割り当てフラグを「未割り当て」に変更する(リソースDB43の変更;ステップS445)。   Next, the release process execution unit 48 changes the resource allocation flag corresponding to the resource determined in step S441 to “unallocated” (change of the resource DB 43; step S445).

図43は、テナントを削除する際の管理装置40の動作例を示す。   FIG. 43 shows an operation example of the management apparatus 40 when deleting a tenant.

ステップS451において、リソース変更処理部41は、制御装置20aに対し、削除するテナントを含むリソース管理情報変更通知を行う。その後、リソース変更処理部41は、制御装置20aからの応答を待つ(ステップS452)。応答を受信したリソース変更処理部41は、解放処理実行部48に対して、指定されたテナントのリソースを削除する指示を行う(ステップS453)。その際、解放処理実行部48は、割り当てリソースDB45のエントリであって、指定されたテナントに関するエントリを削除する。   In step S451, the resource change processing unit 41 notifies the control device 20a of resource management information change including the tenant to be deleted. Thereafter, the resource change processing unit 41 waits for a response from the control device 20a (step S452). The resource change processing unit 41 that has received the response instructs the release processing execution unit 48 to delete the resource of the designated tenant (step S453). At that time, the release process execution unit 48 deletes the entry related to the designated tenant, which is an entry in the allocated resource DB 45.

さらに、解放処理実行部48は、前ステップで解放したエントリに登録されていたリソースに対応するリソースDB43の割り当てフラグを「未割り当て」に変更する(ステップS454)。   Further, the release processing execution unit 48 changes the allocation flag of the resource DB 43 corresponding to the resource registered in the entry released in the previous step to “unallocated” (step S454).

図44は、制御装置20aからリソース管理情報提供要求を受けた場合の管理装置40の動作例を示す。   FIG. 44 shows an operation example of the management apparatus 40 when a resource management information provision request is received from the control apparatus 20a.

ステップS461において、リソース変更処理部41は、割り当てリソースDB45から、指定されたテナントのエントリを検索し、そのエントリに含まれるリソースの動作状態フラグを確認する。その後、リソース変更処理部41は、前ステップで確認したリソースについて、その動作状態を制御装置20aに応答する。なお、リソース管理情報提供要求に対する応答には、指定されたテナントに割り当てられているリソース(通信ノード30)のMACアドレスが含まれる。   In step S461, the resource change processing unit 41 searches the assigned resource DB 45 for the entry of the designated tenant, and checks the operation status flag of the resource included in the entry. Thereafter, the resource change processing unit 41 responds to the control device 20a with the operation state of the resource confirmed in the previous step. The response to the resource management information provision request includes the MAC address of the resource (communication node 30) assigned to the designated tenant.

図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 switch 10, the control device 20, and the communication node 30, there is no difference from the operation example in FIG.

図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 control device 20a to which the broadcast packet is transferred from the switch 10-1 makes a resource management information provision request to the management device 40 in order to determine the broadcast range. Thereafter, the broadcast range is determined according to a response from the management device 40, and a processing rule is set in the switch 10-1.

図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 control device 20a determines the broadcast range based on the response from the management device 40.

図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 management device 40 designates a tenant and notifies the control device 20a of resource management information change notification indicating resource operation. The control device 20a sets a packet out rule in the switch 10-2 according to the notification. Thereafter, the management device 40 waits for a response from the control device 20a, and shifts the communication node 30-3 to the operating state.

図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 management device 40 notifies the control device 20a that the resource has been stopped. Upon receiving the resource stop notification, the control device 20a deletes the packet-out rule set in the switch 10-1. Thereafter, the management device 40 causes the communication node 30-2 to transition to a stopped state.

図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 management device 40 notifies the control device 20a of the tenant deletion by designating the tenant. Upon receiving the resource management information change notification related to the tenant deletion notification, the control device 20a deletes the processing rules set in the switches 10-1 and 10-2. The management device 40 that has received a response indicating that the deletion of the processing rule has been completed from the control device 20a causes the communication nodes 30-1 to 30-3 to transition to a stopped state.

図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 management device 40 notifies the control device 20a that a resource will be added. In response to the notification, the control device 20a sets a processing rule (broadcast transfer rule) for realizing a broadcast path toward the switch 10-2 for the switch 10-1.

図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 management device 40 notifies the control device 20a that the resource is to be deleted. In response to the notification, the control device 20a deletes the processing rules set in the switches 10-1 and 10-2.

以上のように、本実施形態に係る通信システムでは、制御装置20aは、管理装置40が通知する情報に基づいて、ブロードキャスト範囲を決定する。制御装置20aは、決定したブロードキャスト範囲に基づいて、スイッチ10に処理規則を設定し、適切な範囲にブロードキャストパケットを転送できる。また、管理装置40は、通信システムの管理者等が入力するテナント管理情報に基づき、テナントに割り当てるリソースや稼働するリソースを自動的に決定する。そのため、管理者は、個々のテナントに割り当てるリソースを細かく管理する必要がない。   As described above, in the communication system according to the present embodiment, the control device 20a determines the broadcast range based on information notified by the management device 40. Based on the determined broadcast range, the control device 20a can set a processing rule in the switch 10 and transfer the broadcast packet to an appropriate range. In addition, the management device 40 automatically determines a resource to be allocated to a tenant and a resource to be operated based on tenant management information input by a communication system administrator or the like. Therefore, the administrator does not need to finely manage resources allocated to individual tenants.

なお、以上説明した第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 switch 10 and does not match the matching rule stored in the table DB 13 of the switch 10, the control device 20 or the control device 20a generates a processing rule or the like. Do. However, for example, when a tenant is added to the communication system, a broadcast route may be calculated and a corresponding processing rule may be set in the switch 10. In that case, the response speed when the broadcast packet is transmitted first is improved.

また、管理装置40の機能を制御装置20に組み込むこと、あるいは、制御装置20の機能を管理装置40に組み込むことができる。即ち、制御装置20と管理装置40を同一の機器で実現できる。あるいは、スイッチ10や通信ノード30は、仮想マシン(Virtual Machine)であってもよい。さらに、通信システムには、仮想マシンと物理マシンのスイッチ10や通信ノード30が、混在していてもよい。さらにまた、通信システムが含むリソースは仮想マシンや仮想アプライアンスのような仮想的なリソースであってもよい。その場合には、図53に示すように、論理・物理対応管理装置50のような、仮想リソースと仮想リソースが動作する物理マシンの対応関係を管理する装置を用意するのが好ましい。その際、制御装置20aや管理装置40は、論理・物理対応管理装置50を参照することで、仮想リソースと物理マシンの対応を解決する。   Further, the function of the management device 40 can be incorporated into the control device 20, or the function of the control device 20 can be incorporated into the management device 40. That is, the control device 20 and the management device 40 can be realized by the same device. Alternatively, the switch 10 and the communication node 30 may be a virtual machine. Furthermore, a virtual machine and a physical machine switch 10 and a communication node 30 may be mixed in the communication system. Furthermore, the resource included in the communication system may be a virtual resource such as a virtual machine or a virtual appliance. In this case, as shown in FIG. 53, it is preferable to prepare a device that manages the correspondence between the virtual resource and the physical machine on which the virtual resource operates, such as the logical / physical correspondence management device 50. At that time, the control device 20a and the management device 40 refer to the logical / physical correspondence management device 50 to resolve the correspondence between the virtual resource and the physical machine.

最後に、好ましい形態を要約する。   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 1 which sets the 2nd processing rule for sending out from a port to the said 2nd switch.
[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 2 to do.
[Form 4]
When the third communication node when added to the group is in a stopped state,
The communication system according to mode 3, wherein the control device does not set the second processing rule corresponding to the third communication node in the third switch.
[Form 5]
When the third communication node transitions from a stopped state to an operating state,
The communication system according to mode 4, wherein the control device sets the second processing rule corresponding to the third communication node in the third switch.
[Form 6]
When the second communication node transitions from an operating state to a stopped state,
The communication system according to any one of Embodiments 2 to 5, wherein the control device deletes the second processing rule from the second switch.
[Form 7]
When the second communication node is deleted from the group,
The communication system according to any one of Embodiments 2 to 6, wherein the control device deletes the first processing rule from the first switch and deletes the second processing rule from the second switch. .
[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 Embodiments 2 to 7 for specifying a switch for setting the first and / or second processing rule based on a network topology including connections between the plurality of switches and the plurality of communication nodes. The communication system according to 1.
[Form 9]
The communication according to any one of aspects 1 to 8, further comprising a management device that generates the management information based on tenant management information that associates a tenant of a communication system, a communication node assigned to the tenant, and an operation state of the communication node. system.
[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 mode 10, further comprising:
[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 mode 11, further comprising:
[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 communication node Item 14. The control device according to appendix 13, wherein the second processing rule is set in the second switch.
[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 supplementary note 14, wherein a processing rule for transferring the broadcast packet from the first switch to the third switch to which the third communication node is connected is set in at least one of the plurality of switches. apparatus.
[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 supplementary notes 14 to 17, wherein the second processing rule is deleted from the second switch.
[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 Switch 11, 49 Communication unit 12 Table management unit 13 Table database (table DB)
14 Transfer processing units 20, 20a, 103 Control device 21 Topology management unit 22 Topology database (topology DB)
23 Control Message Processing Unit 24 Route / Action Calculation Unit 25 Packet Transfer Route Database (Packet Transfer Route DB)
26 processing rule management unit 27 processing rule database (processing rule DB)
28, 28a Broadcast range determination unit 29, 29a Configuration change processing unit 30 30-1 to 30-5, 101-1 to 101-4 Communication node 31 Resource information database (resource information DB)
32 node communication unit 40 management device 41 resource change processing unit 42 resource management unit 43 resource database (resource DB)
44 Allocation Planning Unit 45 Allocation Resource Database (Allocation Resource DB)
46 Operating resource determination unit 47 Tenant resource database (tenant resource DB)
48 Release processing execution unit 50 Logical / physical correspondence management device 141 Table search unit 142 Action execution unit

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.
グループに第3の通信ノードが追加され、且つ、前記第3の通信ノードと同一のグループに属する他の通信ノードが接続されるスイッチが不存在の場合に、
前記制御装置は、前記ブロードキャストパケットを前記第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の通信ノードが停止状態の場合に、
前記制御装置は、前記第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の通信ノードが停止状態から稼働状態に遷移する場合に、
前記制御装置は、前記第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のスイッチから削除する請求項する請求項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
JP2013048319A 2013-03-11 2013-03-11 Communication system, communication method, control device, control device control method and program Pending JP2014175938A (en)

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)

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