JP2013105308A - Load distribution system, load distribution device, load distribution method and load distribution program - Google Patents

Load distribution system, load distribution device, load distribution method and load distribution program Download PDF

Info

Publication number
JP2013105308A
JP2013105308A JP2011248597A JP2011248597A JP2013105308A JP 2013105308 A JP2013105308 A JP 2013105308A JP 2011248597 A JP2011248597 A JP 2011248597A JP 2011248597 A JP2011248597 A JP 2011248597A JP 2013105308 A JP2013105308 A JP 2013105308A
Authority
JP
Japan
Prior art keywords
address
information processing
network
transfer
request 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
JP2011248597A
Other languages
Japanese (ja)
Inventor
Kimihiko Fukami
公彦 深見
Hideo Kitatsume
秀雄 北爪
Takaaki Koyama
高明 小山
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2011248597A priority Critical patent/JP2013105308A/en
Publication of JP2013105308A publication Critical patent/JP2013105308A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

PROBLEM TO BE SOLVED: To achieve load distribution which is nicely interlocked with a virtual network while suppressing a cost burden.SOLUTION: A server 0 functioning as a load distribution device among a plurality of servers 0-4 in a data center performs the steps of: acquiring all pairs of private addresses which have a same VLANID associated with global addresses which match transfer destination IP addresses of request packets, and MAC addresses which are assigned to communication apparatuses of other servers; determining a distribution destination of the request packets from among the acquired pairs of private addresses and MAC addresses on the basis of distribution algorithm; and setting a pair of a private address and a MAC address determined as the distribution destination and the VLANID as flow information for performing transfer control of the request packets, to a flow table of an open flow switch 110.

Description

本発明は、負荷分散システム、負荷分散装置、負荷分散方法および負荷分散プログラムに関する。   The present invention relates to a load distribution system, a load distribution apparatus, a load distribution method, and a load distribution program.

従来、クラウドシステムやデータセンタなどにおいて、クライアントからのアクセスが特定のサーバに集中することを回避して負荷分散を図る技術がある。例えば、非特許文献1では、クラウドシステムやデータセンタに配置されたサーバとクライアントとの間に設けられたネットワーク上に負荷分散装置を組み込み、この負荷分散装置が、サーバやネットワークの状態に応じてトラフィックをコントロールするものについての開示がある。この非特許文献1は、VLAN(Virtual Local Area Network)に対応することで、負荷分散装置の配下に複数のネットワークの収容を可能とし、VLAN単位での負荷分散を行う。   2. Description of the Related Art Conventionally, in a cloud system, a data center, or the like, there is a technique for distributing loads by avoiding that accesses from clients are concentrated on a specific server. For example, in Non-Patent Document 1, a load balancer is incorporated on a network provided between a server and a client arranged in a cloud system or a data center, and the load balancer depends on the state of the server or network. There is disclosure about what controls traffic. This Non-Patent Document 1 supports a VLAN (Virtual Local Area Network), thereby allowing a plurality of networks to be accommodated under a load distribution device and performing load distribution in VLAN units.

また、クラウドシステムやデータセンタにおける負荷分散に関連する技術として、負荷分散を実現するためのソフトウェアを利用するものもある。例えば、非特許文献2には、レイヤ4やレイヤ7などに対応し、比較的安価なサーバに負荷分散の処理を行わせるソフトウェアについての開示がある。   In addition, as a technique related to load distribution in a cloud system or a data center, there is a technique that uses software for realizing load distribution. For example, Non-Patent Document 2 discloses software that supports layer 4 and layer 7 and causes a relatively inexpensive server to perform load distribution processing.

「BIG−IP」、[Online]、[平成23年11月2日検索]、インターネット(URL:http://www.f5networks.co.jp/product/bigip/index.html)“BIG-IP”, [Online], [November 2, 2011 search], Internet (URL: http://www.f5networks.co.jp/product/bigip/index.html) 「UltraMonkey−L7」、[Online]、[平成23年11月2日検索]、インターネット(URL:http://www.oss.ecl.ntt.co.jp/ossc/download/UltraMonkey.pdf)"UltraMonkey-L7", [Online], [November 2, 2011 search], Internet (URL: http://www.oss.ecl.ntt.co.jp/ossc/download/UltraMonkey.pdf)

しかしながら、上述した非特許文献1では、テナント数の増加に対応する場合、テナントの増加予測数に応じた数の装置を予め準備しておく必要がある。一般的に、非特許文献1に開示されているような負荷分散装置は高価であるので、テナントの増加予測数に応じた数の装置を予め準備することは経費の負担が大きく、また、テナントの増加予測数に応じた数の装置を予め準備するといった設備計画が困難であるという問題がある。   However, in Non-Patent Document 1 described above, in order to cope with an increase in the number of tenants, it is necessary to prepare in advance a number of devices corresponding to the expected increase in the number of tenants. In general, since a load distribution device as disclosed in Non-Patent Document 1 is expensive, it is expensive to prepare in advance the number of devices corresponding to the expected increase in the number of tenants. There is a problem in that it is difficult to plan equipment such as preparing in advance a number of devices corresponding to the expected increase in the number of devices.

一方、上述した非特許文献2に開示があるソフトウェアを利用すれば、テナント数の増加に対して比較的柔軟に対応できる。しかしながら、非特許文献2に開示されているソフトウェアでは、VLANのレイヤ(レイヤ2やレイヤ3)に対応していないので、VLAN単位で負荷分散を実現できないという問題がある。   On the other hand, if the software disclosed in Non-Patent Document 2 described above is used, an increase in the number of tenants can be handled relatively flexibly. However, since the software disclosed in Non-Patent Document 2 does not support VLAN layers (Layer 2 and Layer 3), there is a problem that load distribution cannot be realized in units of VLANs.

すなわち、上述した非特許文献1は、クラウドシステムやデータセンタなどにおいて、VLANなどの仮想ネットワークに対応した負荷分散を行う場合、コスト負担が大きい点やハードウェアの設備計画が困難であるという点で問題があり、また、上述した非特許文献2は、仮想ネットワークに上手く連動させた状態でのハードウェアの転用ができないという点で問題がある。   That is, Non-Patent Document 1 described above is that, in a cloud system, a data center, or the like, when load distribution corresponding to a virtual network such as a VLAN is performed, the cost burden is large and hardware facility planning is difficult. There is a problem, and the above-mentioned Non-Patent Document 2 has a problem in that the hardware cannot be diverted in a state of being well linked to the virtual network.

本発明は、上記に鑑みてなされたものであって、コスト負担を抑えつつ、仮想ネットワークと上手く連動させた負荷分散を実現することが可能な負荷分散システム、負荷分散装置、負荷分散方法および負荷分散プログラムを提供することを目的とする。   The present invention has been made in view of the above, and is capable of realizing load balancing that is well linked to a virtual network while suppressing cost burden, a load balancing device, a load balancing method, and a load. The purpose is to provide a distributed program.

上述した課題を解決し、目的を達成するために、本発明は、同一のローカルネットワーク内に収容され、複数のテナントに貸し出される複数の情報処理装置を有し、外部のネットワークを経由するクライアントからの前記情報処理装置に対するアクセスを制御する負荷分散装置を有する負荷分散システムであって、前記負荷分散装置は、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットに挿入されたアドレス情報を変換するためのフローテーブルに従って、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットを転送する転送部と、前記情報処理装置により前記外部のネットワークにおいて利用されるグローバルアドレスと、前記情報処理装置により前記ローカルネットワークにおいて利用されるプライベートアドレスおよび前記情報処理装置のMACアドレスの対と、前記ローカルネットワーク内に前記テナント単位で構築された仮想ネットワークのうち前記情報処理装置が属する仮想ネットワークを識別する仮想ネットワーク識別子とを対応付けて記憶するテナント情報記憶部と、リクエストパケットの転送手順の問合せを前記転送部から受信した場合に、前記リクエストパケットの宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子が同一である、前記プライベートアドレスおよび前記MACアドレスの対を前記テナント情報記憶部から全て取得し、取得した前記プライベートアドレスおよび前記MACアドレスの全ての対の中から、前記リクエストパケットの振り分け先を分散アルゴリズムにより決定し、前記振り分け先に決定された前記プライベートアドレスおよび前記MACアドレスの対と、前記宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子とを、前記リクエストパケットを転送制御させるためのフロー情報として前記フローテーブルに設定するリクエスト転送設定部とを有することを特徴とする。   In order to solve the above-described problems and achieve the object, the present invention includes a plurality of information processing apparatuses accommodated in the same local network and lent out to a plurality of tenants, from a client via an external network. A load distribution system having a load distribution device for controlling access to the information processing apparatus, wherein the load distribution device is address information inserted in a packet exchanged between the local network and the external network. In accordance with a flow table for converting, a transfer unit that transfers packets exchanged between the local network and the external network, a global address used in the external network by the information processing device, The local network is processed by the information processing apparatus. Virtual network identifier for identifying the virtual network to which the information processing apparatus belongs among the virtual network constructed in units of tenants in the local network and the pair of the private address used in the network and the MAC address of the information processing apparatus And the tenant information storage unit for storing the request packet and the virtual packet associated with the same global address as the destination IP address of the request packet when an inquiry about the transfer procedure of the request packet is received from the transfer unit All of the private address and MAC address pairs having the same network identifier are acquired from the tenant information storage unit, and the request packet is selected from all of the acquired private address and MAC address pairs. And the virtual network identifier associated with the same global address as the destination IP address, and a pair of the private address and the MAC address determined as the distribution destination, A request transfer setting unit configured to set in the flow table as flow information for controlling transfer of the request packet.

また、本発明は、複数のテナントに貸し出される複数の情報処理装置と同一のローカルネットワーク内に収容され、外部のネットワークを経由するクライアントからの前記情報処理装置に対するアクセスを制御する負荷分散装置であって、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットに挿入されたアドレス情報を変換するためのフローテーブルに従って、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットを転送する転送部と、前記情報処理装置により前記外部のネットワークにおいて利用されるグローバルアドレスと、前記情報処理装置により前記ローカルネットワークにおいて利用されるプライベートアドレスおよび前記情報処理装置のMACアドレスの対と、前記ローカルネットワーク内に前記テナント単位で構築された仮想ネットワークのうち前記情報処理装置が属する仮想ネットワークを識別する仮想ネットワーク識別子とを対応付けて記憶するテナント情報記憶部と、リクエストパケットの転送手順の問合せを前記転送部から受信した場合に、前記リクエストパケットの宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子が同一である、前記プライベートアドレスおよび前記MACアドレスの対を前記テナント情報記憶部から全て取得し、取得した前記プライベートアドレスおよび前記MACアドレスの全ての対の中から、前記リクエストパケットの振り分け先を分散アルゴリズムにより決定し、前記振り分け先に決定された前記プライベートアドレスおよび前記MACアドレスの対と、前記宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子とを、前記リクエストパケットを転送制御させるためのフロー情報として前記フローテーブルに設定するリクエスト転送設定部とを有することを特徴とする。   In addition, the present invention is a load balancer that controls access to an information processing apparatus from a client that is accommodated in the same local network as a plurality of information processing apparatuses lent to a plurality of tenants and that passes through an external network. A packet exchanged between the local network and the external network according to a flow table for converting address information inserted in the packet exchanged between the local network and the external network. A transfer unit that transfers, a global address used in the external network by the information processing apparatus, and a pair of a private address and a MAC address of the information processing apparatus used in the local network by the information processing apparatus A tenant information storage unit that stores a virtual network identifier that identifies a virtual network to which the information processing apparatus belongs among virtual networks constructed in units of tenants in the local network, and an inquiry about a request packet transfer procedure Is received from the transfer unit, the tenant information is a pair of the private address and the MAC address, wherein the virtual network identifier associated with the same global address as the destination IP address of the request packet is the same. Obtain all from the storage unit, determine a distribution destination of the request packet from among all the pairs of the acquired private address and the MAC address by a distributed algorithm, and determine the private address determined as the distribution destination A request for setting, in the flow table, a pair of an address and the MAC address and the virtual network identifier associated with the same global address as the destination IP address as flow information for controlling transfer of the request packet And a transfer setting unit.

また、本発明は、同一のローカルネットワーク内に収容され、複数のテナントに貸し出される複数の情報処理装置と、外部のネットワークを経由するクライアントからの前記情報処理装置に対するアクセスを制御する負荷分散装置とを有する負荷分散システムで実行される負荷分散方法であって、前記負荷分散装置が、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットに挿入されたアドレス情報を変換するためのフローテーブルに従って、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットを転送する転送部から、リクエストパケットの転送手順の問合せを受信した場合に、前記情報処理装置により前記外部のネットワークにおいて利用されるグローバルアドレスと、前記情報処理装置により前記ローカルネットワークにおいて利用されるプライベートアドレスおよび前記情報処理装置のMACアドレスの対と、前記ローカルネットワーク内に前記テナント単位で構築された仮想ネットワークのうち前記情報処理装置が属する仮想ネットワークを識別する仮想ネットワーク識別子とを対応付けて記憶するテナント情報記憶部から、前記リクエストパケットの宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子が同一である、前記プライベートアドレスおよび前記MACアドレスの対を全て取得し、取得した前記プライベートアドレスおよび前記MACアドレスの全ての対の中から、前記リクエストパケットの振り分け先を分散アルゴリズムにより決定する決定ステップと、前記負荷分散装置が、前記振り分け先に決定された前記プライベートアドレスおよび前記MACアドレスの対と、前記宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子とを、前記リクエストパケットを転送制御させるためのフロー情報として前記フローテーブルに設定するリクエスト転送設定ステップとを含むことを特徴とする。   The present invention also provides a plurality of information processing apparatuses accommodated in the same local network and lent to a plurality of tenants, and a load distribution apparatus that controls access to the information processing apparatus from a client via an external network, A load distribution method executed by a load distribution system including: a flow for the load distribution apparatus to convert address information inserted in a packet exchanged between the local network and the external network When an inquiry about a request packet transfer procedure is received from a transfer unit that transfers a packet exchanged between the local network and the external network according to the table, the information processing device uses the external packet in the external network. Global address A virtual network to which the information processing device belongs among a pair of a private address used in the local network by the information processing device and a MAC address of the information processing device, and a virtual network constructed in the tenant unit in the local network A tenant information storage unit that associates and stores a virtual network identifier that identifies the private address and the virtual network identifier associated with the same global address as the destination IP address of the request packet are the same, and A decision process for obtaining all the MAC address pairs and determining a distribution destination of the request packet by a distributed algorithm from all the obtained private address and MAC address pairs. And the load balancer, the pair of the private address and the MAC address determined as the distribution destination, and the virtual network identifier associated with the same global address as the destination IP address, A request transfer setting step of setting the flow table as flow information for controlling transfer of the request packet.

また、本発明は、複数のテナントに貸し出される複数の情報処理装置と同一のローカルネットワーク内に収容され、外部のネットワークを経由するクライアントからの前記情報処理装置に対するアクセスを制御する負荷分散装置が実行する負荷分散方法であって、前記負荷分散装置が、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットに挿入されたアドレス情報を変換するためのフローテーブルに従って、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットを転送する転送部から、リクエストパケットの転送手順の問合せを受信した場合に、前記情報処理装置により前記外部のネットワークにおいて利用されるグローバルアドレスと、前記情報処理装置により前記ローカルネットワークにおいて利用されるプライベートアドレスおよび前記情報処理装置のMACアドレスの対と、前記ローカルネットワーク内に前記テナント単位で構築された仮想ネットワークのうち前記情報処理装置が属する仮想ネットワークを識別する仮想ネットワーク識別子とを対応付けて記憶するテナント情報記憶部から、前記リクエストパケットの宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子が同一である、前記プライベートアドレスおよび前記MACアドレスの対を全て取得し、取得した前記プライベートアドレスおよび前記MACアドレスの全ての対の中から、前記リクエストパケットの振り分け先を分散アルゴリズムにより決定する決定ステップと、前記負荷分散装置が、前記振り分け先に決定された前記プライベートアドレスおよび前記MACアドレスの対と、前記宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子とを、前記リクエストパケットを転送制御させるためのフロー情報として前記フローテーブルに設定するリクエスト転送設定ステップとを含むことを特徴とする。   In addition, the present invention is executed by a load balancer that controls access to an information processing apparatus from a client that is housed in the same local network as a plurality of information processing apparatuses lent to a plurality of tenants and that passes through an external network. A load distribution method, wherein the load balancer and the local network and the external network according to a flow table for converting address information inserted in a packet exchanged between the local network and the external network A global address used in the external network by the information processing apparatus when receiving an inquiry about a transfer procedure of a request packet from a transfer unit that transfers a packet exchanged with an external network, and the information The low A virtual network identifier that identifies a pair of a private address and a MAC address of the information processing apparatus used in a local network, and a virtual network to which the information processing apparatus belongs among virtual networks constructed in units of tenants in the local network A pair of the private address and the MAC address having the same virtual network identifier associated with the same global address as the destination IP address of the request packet. A determination step of determining all of the acquired private addresses and the MAC address pairs from all acquired pairs by a distribution algorithm, and the load distribution apparatus, Flow for controlling transfer of the request packet with the pair of the private address and the MAC address determined as a distribution destination and the virtual network identifier associated with the same global address as the destination IP address A request transfer setting step for setting the information in the flow table as information.

また、本発明は、複数のテナントに貸し出される複数の情報処理装置と同一のローカルネットワーク内に収容され、外部のネットワークを経由するクライアントからの前記情報処理装置に対するアクセスを制御する負荷分散装置に実行させるための負荷分散プログラムであって、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットに挿入されたアドレス情報を変換するためのフローテーブルに従って、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットを転送する転送部から、リクエストパケットの転送手順の問合せを受信した場合に、前記情報処理装置により前記外部のネットワークにおいて利用されるグローバルアドレスと、前記情報処理装置により前記ローカルネットワークにおいて利用されるプライベートアドレスおよび前記情報処理装置のMACアドレスの対と、前記ローカルネットワーク内に前記テナント単位で構築された仮想ネットワークのうち前記情報処理装置が属する仮想ネットワークを識別する仮想ネットワーク識別子とを対応付けて記憶するテナント情報記憶部から、前記リクエストパケットの宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子が同一である、前記プライベートアドレスおよび前記MACアドレスの対を全て取得し、取得した前記プライベートアドレスおよび前記MACアドレスの全ての対の中から、前記リクエストパケットの振り分け先を分散アルゴリズムにより決定する決定手順と、前記振り分け先に決定された前記プライベートアドレスおよび前記MACアドレスの対と、前記宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子とを、前記リクエストパケットを転送制御させるためのフロー情報として前記フローテーブルに設定するリクエスト転送設定手順とを実行させることを特徴とする。   The present invention is also implemented in a load balancer that is accommodated in the same local network as a plurality of information processing devices lent to a plurality of tenants and controls access to the information processing devices from clients via an external network. A load distribution program for causing the local network and the external network to follow a flow table for converting address information inserted in a packet exchanged between the local network and the external network. When an inquiry about the transfer procedure of a request packet is received from a transfer unit that transfers packets exchanged between them, the global address used in the external network by the information processing device, and the information processing device by the information processing device Local A pair of a private address used in a network and a MAC address of the information processing apparatus, and a virtual network identifier for identifying a virtual network to which the information processing apparatus belongs among virtual networks constructed in units of tenants in the local network From the tenant information storage unit that associates and stores all the pairs of the private address and the MAC address that have the same virtual network identifier associated with the same global address as the destination IP address of the request packet. A determination procedure for determining a distribution destination of the request packet from among all the pairs of the acquired private address and the MAC address by a distributed algorithm, and the determination of the distribution destination A private address / MAC address pair and the virtual network identifier associated with the same global address as the destination IP address are set in the flow table as flow information for controlling transfer of the request packet. A request transfer setting procedure is executed.

本発明によれば、コスト負担を抑えつつ、仮想ネットワークと上手く連動させた負荷分散を実現することができる。   According to the present invention, it is possible to realize load distribution that is well linked to a virtual network while suppressing cost burden.

図1は、実施例1に係るデータセンタの構成例を示す図である。FIG. 1 is a diagram illustrating a configuration example of a data center according to the first embodiment. 図2は、負荷分散処理部の構成を示す機能ブロック図である。FIG. 2 is a functional block diagram illustrating a configuration of the load distribution processing unit. 図3は、MACアドレス格納部に格納されているレコードの一例を示す図である。FIG. 3 is a diagram illustrating an example of a record stored in the MAC address storage unit. 図4は、実施例1に係るテナントサーバ情報格納部に格納されているレコードの一例を示す図である。FIG. 4 is a diagram illustrating an example of records stored in the tenant server information storage unit according to the first embodiment. 図5は、実施例1に係るリプライ情報格納部に格納されているレコードの一例を示す図である。FIG. 5 is a diagram illustrating an example of records stored in the reply information storage unit according to the first embodiment. 図6は、実施例1に係る処理の流れを示す図である。FIG. 6 is a diagram illustrating a flow of processing according to the first embodiment. 図7は、実施例2に係るデータセンタの構成例を示す図である。FIG. 7 is a diagram illustrating a configuration example of a data center according to the second embodiment. 図8は、実施例2に係るテナントサーバ情報格納部に格納されているレコードの一例を示す図である。FIG. 8 is a diagram illustrating an example of records stored in the tenant server information storage unit according to the second embodiment. 図9は、実施例2に係るリプライ情報格納部に格納されているレコードの一例を示す図である。FIG. 9 is a diagram illustrating an example of records stored in the reply information storage unit according to the second embodiment. 図10は、実施例で説明した処理と同様の機能を実現させるためのプログラムを実行するコンピュータの一例を示す図である。FIG. 10 is a diagram illustrating an example of a computer that executes a program for realizing the same function as the processing described in the embodiment.

以下に、図面を参照しつつ、本願にかかる負荷分散システム、負荷分散装置、負荷分散方法および負荷分散プログラムの実施例を説明する。後述する各実施例は一実施形態にすぎず、本願にかかる負荷分散システム、負荷分散装置、負荷分散方法および負荷分散プログラムの実施形態を限定するものではない。また、後述する各実施例は処理内容に矛盾を生じさせない範囲で適宜組み合わせることもできる。   Embodiments of a load distribution system, a load distribution apparatus, a load distribution method, and a load distribution program according to the present application will be described below with reference to the drawings. Each example described below is merely an embodiment, and does not limit the embodiments of the load distribution system, the load distribution device, the load distribution method, and the load distribution program according to the present application. In addition, the embodiments described later can be appropriately combined within a range that does not cause a contradiction in the processing contents.

[負荷分散システムの概要および特徴(実施例1)]
実施例1に係る負荷分散システムの概要および特徴を説明する。実施例1に係る負荷分散システムは、同一のローカルネットワーク内に収容され、複数のテナントに貸し出される複数の情報処理装置を有し、外部のネットワークを経由するクライアントからの前記情報処理装置に対するアクセスを制御することを概要とする。そして、実施例1に係る負荷分散システムは、コスト負担を抑えつつ、仮想ネットワークと上手く連動させた負荷分散を実現することが可能である点に主たる特徴がある。
[Outline and Features of Load Balancing System (Example 1)]
An overview and features of the load distribution system according to the first embodiment will be described. The load distribution system according to the first embodiment includes a plurality of information processing apparatuses accommodated in the same local network and lent to a plurality of tenants, and accesses the information processing apparatus from clients via an external network. The outline is to control. The load distribution system according to the first embodiment is mainly characterized in that it is possible to realize load distribution that is well linked with the virtual network while suppressing the cost burden.

まず、複数の情報処理装置のうちの1つの情報処理装置を、外部のネットワークを経由するクライアントからの前記情報処理装置に対するアクセスを制御する負荷分散装置として機能させる。これにより、テナントの増加予測数に応じて高価な負荷分散装置を予め用意するためのコスト負担が必要なく、テナントの増加予測数に応じた数の装置を予め準備するといった設備計画の困難性からも開放される。   First, one information processing device of a plurality of information processing devices is caused to function as a load distribution device that controls access to the information processing device from a client via an external network. As a result, there is no cost burden for preparing an expensive load distribution device in advance according to the expected increase in the number of tenants, and the difficulty in facility planning such as preparing in advance the number of devices according to the expected increase in the number of tenants. Is also released.

そして、負荷分散装置は、フローテーブルに従って前記ローカルネットワークと前記外部のネットワークとの間でやり取りされる情報を転送する転送部を有する。また、負荷分散装置は、転送部から、リクエストパケットの転送手順の問合せを受信した場合に、前記情報処理装置により前記外部のネットワークにおいて利用されるグローバルアドレスと、前記情報処理装置により前記ローカルネットワークにおいて利用されるプライベートアドレスおよび前記情報処理装置のMACアドレスの対と、前記ローカルネットワーク内に前記テナント単位で構築された仮想ネットワークのうち前記情報処理装置が属する仮想ネットワークを識別する仮想ネットワーク識別子とを対応付けて記憶するテナント情報記憶部から、前記リクエストパケットの宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子が同一である、前記プライベートアドレスおよび前記MACアドレスの対を全て取得し、取得した前記プライベートアドレスおよび前記MACアドレスの全ての対の中から、前記リクエストパケットの振り分け先を分散アルゴリズムにより決定し、前記振り分け先に決定された前記プライベートアドレスおよび前記MACアドレスの対と、前記宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子とを、前記リクエストパケットを転送制御させるためのフロー情報として前記フローテーブルに設定するリクエスト転送設定部を有する。これにより、負荷分散装置は、仮想ネットワーク単位で情報処理装置へのアクセスを制御することができる。   The load distribution apparatus includes a transfer unit that transfers information exchanged between the local network and the external network according to a flow table. In addition, when receiving an inquiry about a transfer procedure of a request packet from the transfer unit, the load balancer uses a global address used in the external network by the information processing device and a local address by the information processing device in the local network. Corresponding a pair of a private address to be used and a MAC address of the information processing device, and a virtual network identifier for identifying a virtual network to which the information processing device belongs among virtual networks constructed in the tenant unit in the local network The private address and the MAC address having the same virtual network identifier associated with the same global address as the destination IP address of the request packet are stored in the tenant information storage unit attached and stored. Obtain all the pairs of addresses, determine a distribution destination of the request packet from among all the pairs of the acquired private address and the MAC address by a distributed algorithm, and determine the private address determined as the distribution destination and the A request transfer setting unit that sets a pair of MAC addresses and the virtual network identifier associated with the same global address as the destination IP address in the flow table as flow information for controlling transfer of the request packet Have Thereby, the load distribution apparatus can control access to the information processing apparatus in units of virtual networks.

このようなことから、実施例1に係る負荷分散システムは、コスト負担を抑えつつ、仮想ネットワークと上手く連動させた負荷分散を実現できる。   For this reason, the load distribution system according to the first embodiment can realize load distribution well linked with the virtual network while suppressing the cost burden.

[負荷分散システムの構成(実施例1)]
以下の実施例1では、テナントに提供される複数のサーバを有するデータセンタを、実施例1に係る負荷分散システムの一例として説明する。
[Configuration of Load Balancing System (Example 1)]
In the following first embodiment, a data center having a plurality of servers provided to tenants will be described as an example of a load distribution system according to the first embodiment.

図1は、実施例1に係るデータセンタの構成例を示す図である。図1に示すように、実施例1に係るデータセンタは、サーバ0〜サーバ4の5台の物理サーバを有し、これらの物理サーバをテナントである企業に貸し出すサービスを提供する。例えば、図1に示すサーバ1およびサーバ2はテナントAに貸し出され、サーバ3およびサーバ4は、テナントBに貸し出された状態にある。そして、スイッチ200およびサーバ0〜サーバ4を収容するローカルネットワーク内に2つの仮想ネットワークが構築される。   FIG. 1 is a diagram illustrating a configuration example of a data center according to the first embodiment. As illustrated in FIG. 1, the data center according to the first embodiment includes five physical servers, server 0 to server 4, and provides a service that lends these physical servers to a company that is a tenant. For example, the server 1 and the server 2 illustrated in FIG. 1 are lent to the tenant A, and the server 3 and the server 4 are lent to the tenant B. Then, two virtual networks are constructed in the local network that accommodates the switch 200 and the servers 0 to 4.

テナントAに貸し出されているサーバ1およびサーバ2は、ローカルネットワーク内に構築された仮想ネットワークの1つに属する。そして、図1に示すように、サーバ1およびサーバ2が属する仮想ネットワークは、識別子として付与された「VLAN(Virtual Local Area Network)=20」で管理されている。また、テナントBに貸し出されているサーバ3およびサーバ4は、サーバ1およびサーバ2が属する仮想ネットワークとは異なる仮想ネットワークに属する。そして、サーバ3およびサーバ4が属する仮想ネットワークは、識別子として付与された「VLAN(Virtual Local Area Network)=40」で管理されている。このように、データセンタは、VLAN単位でマルチテナントの形態をとっている。マルチテナントとは、複数の顧客企業間でハードウェアやソフトウェアなどのリソースを共有する方式であり、ハードウェアのみを共有し、仮想マシン上で顧客ごとに異なるソフトウェアを用意する方式や、アプリケーションソフトやデータベースのスキーマ(設定)までを共有し、設定情報やデータベースの内容のみが顧客ごとに異なる方式などがある。   Server 1 and server 2 lent to tenant A belong to one of the virtual networks constructed in the local network. As shown in FIG. 1, the virtual network to which the server 1 and the server 2 belong is managed by “VLAN (Virtual Local Area Network) = 20” given as an identifier. Further, the server 3 and the server 4 lent to the tenant B belong to a virtual network different from the virtual network to which the server 1 and the server 2 belong. The virtual network to which the server 3 and the server 4 belong is managed by “VLAN (Virtual Local Area Network) = 40” given as an identifier. In this way, the data center takes the form of a multi-tenant on a VLAN basis. Multi-tenant is a method of sharing resources such as hardware and software among multiple customer companies, sharing only hardware and preparing different software for each customer on a virtual machine, application software, etc. There are methods such as sharing the schema (setting) of the database and changing only the setting information and database contents for each customer.

サーバ1〜4は、ネットワークインターフェースカードを1枚装備し、データセンタ内のローカルネットワークに接続される。また、サーバ1〜4では、テナントに利用させるための仮想マシンが稼動しており、サーバ1では、テナントAに利用させるための仮想マシン「A.1」および「A.2」が稼動し、サーバ2では、テナントAに利用させるための仮想マシン「A.3」および「A.4」が稼動している。また、サーバ3では、テナントBに利用させるための仮想マシン「B.1」および「B.2」が稼動しており、サーバ4では、テナントBに利用させるための仮想マシン「B.3」および「B.4」が稼動している。また、サーバ1〜4は、それぞれブリッジを有し、サーバ内で稼動する仮想マシンにはブリッジを介して接続される。   The servers 1 to 4 are equipped with one network interface card and are connected to a local network in the data center. In addition, virtual machines for use by the tenant are running on the servers 1 to 4, and virtual machines “A.1” and “A.2” for use by the tenant A are running on the server 1. In the server 2, virtual machines “A.3” and “A.4” to be used by the tenant A are operating. In the server 3, virtual machines “B.1” and “B.2” to be used by the tenant B are operating, and in the server 4, the virtual machine “B.3” to be used by the tenant B is operated. And “B.4” are operating. Each of the servers 1 to 4 has a bridge, and is connected to a virtual machine operating in the server via the bridge.

サーバ0は、サーバ1〜4に対するクライアントからのアクセスを制御する負荷分散装置として機能する。クライアントは、サーバ0を介して、データセンタ内のサーバ1〜4(サーバ1〜4で稼動する仮想マシン)へのアクセスが可能となる。   The server 0 functions as a load distribution device that controls access from the client to the servers 1 to 4. The client can access the servers 1 to 4 (virtual machines running on the servers 1 to 4) in the data center via the server 0.

図1に示すように、サーバ0は、ネットワークインターフェースカード(NIC:Network Interface Card)を2枚装備し、一方のネットワークインターフェースカード(NIC1)は、インターネットに接続され、他方のネットワークインターフェースカード(NIC2)は、データセンタ内のローカルネットワークに接続される。   As shown in FIG. 1, the server 0 is equipped with two network interface cards (NIC: Network Interface Card), one network interface card (NIC1) is connected to the Internet, and the other network interface card (NIC2). Are connected to a local network in the data center.

そして、サーバ0は、図1に示すように、オープンフロースイッチ110と、コントローラ120と、負荷分散処理部130とを有する。   As shown in FIG. 1, the server 0 includes an open flow switch 110, a controller 120, and a load distribution processing unit 130.

オープンフロースイッチ110は、フローテーブルに設定されたフロー情報(オープンフロー)に従って、オープンフローによるパケット通信の制御処理を行う、ソフトウェアで実行された仮想スイッチである。なお、オープンフローとは、MAC(Media Access Control)アドレスやIP(Internet Protocol)アドレス、ポート番号などの組合せによって決定される一連の通信をフローと定義し、フロー単位で通信経路を制御する方式である。また、フローテーブルは、オープンフロースイッチ110がパケットを宛先に転送するために、パケットに挿入されたアドレス情報を変換する(書き換える)ためのフロー情報を記憶するテーブルである。フローテーブルには、後述する負荷分散処理部130によりフロー情報が設定される。   The OpenFlow switch 110 is a virtual switch executed by software that performs packet communication control processing by OpenFlow according to the flow information (OpenFlow) set in the flow table. Open flow is a system that defines a series of communications determined by a combination of MAC (Media Access Control) address, IP (Internet Protocol) address, port number, etc. as a flow, and controls the communication path in units of flows. is there. The flow table is a table that stores flow information for converting (rewriting) address information inserted in the packet so that the OpenFlow switch 110 transfers the packet to the destination. Flow information is set in the flow table by a load distribution processing unit 130 described later.

具体的に説明すると、オープンフロースイッチ110は、ゲートウェイからarp(address resolution protocol)パケットを受信すると、コントローラ120に転送する。また、オープンフロースイッチ110は、コントローラ120からarpパケット応答命令を受信すると、arpパケット応答をゲートウェイに転送する。   More specifically, when receiving the arp (address resolution protocol) packet from the gateway, the OpenFlow switch 110 transfers the packet to the controller 120. Further, when receiving the arp packet response command from the controller 120, the OpenFlow switch 110 transfers the arp packet response to the gateway.

また、オープンフロースイッチ110は、ゲートウェイから、テナントサーバへのリクエストパケットであるHTTP(Hypertext Transfer Protocol)パケットを受信すると、フローテーブルに対応するフロー情報があるかどうかを確認する。オープンフロースイッチ110は、対応するフロー情報がフローテーブルになければ、リクエストパケット転送用のフロー情報の問合せをコントローラ120に送信する。また、オープンフロースイッチ110は、コントローラ120によりフローテーブルに設定されたフロー情報に基づいて、ゲートウェイから受信したリクエストパケットのアドレス情報を書き換えてテナントサーバへ転送する。例えば、オープンフロースイッチ110は、フロー情報に従って、リクエストパケットの宛先として記入されている転送先IPアドレスを、データセンタ内にある対応テナントサーバに割り当てられたプライベートアドレスに書き換え、データセンタ内にある対応テナントサーバのMACアドレスをリクエストパケットに記入し、データセンタ内にある対応テナントサーバが属する仮想ネットワークのVLANIDをリクエストパケットに付与する。実施例1において、テナントサーバとは、リクエストパケットの宛先であるデータセンタ内の物理サーバ(あるいは、物理サーバ内で稼動する仮想マシン(例えば、A.1〜A.4、B.1〜B.4など))に該当する。   When the OpenFlow switch 110 receives an HTTP (Hypertext Transfer Protocol) packet that is a request packet to the tenant server from the gateway, the OpenFlow switch 110 checks whether there is flow information corresponding to the flow table. If there is no corresponding flow information in the flow table, the OpenFlow switch 110 transmits an inquiry for flow information for request packet transfer to the controller 120. Also, the OpenFlow switch 110 rewrites the address information of the request packet received from the gateway based on the flow information set in the flow table by the controller 120 and transfers it to the tenant server. For example, the OpenFlow switch 110 rewrites the transfer destination IP address written as the destination of the request packet with the private address assigned to the corresponding tenant server in the data center according to the flow information, and the correspondence in the data center. The MAC address of the tenant server is entered in the request packet, and the VLAN ID of the virtual network to which the corresponding tenant server in the data center belongs is assigned to the request packet. In the first embodiment, the tenant server is a physical server in the data center that is the destination of the request packet (or a virtual machine operating in the physical server (for example, A.1 to A.4, B.1 to B.B). 4))).

また、オープンフロースイッチ110は、テナントサーバから、リクエストパケットに対するリプライパケットを受信すると、対応するフロー情報があるかどうかを確認する。オープンフロースイッチ110は、対応するフロー情報がフローテーブルになければ、リプライパケット転送用のフロー情報の問合せをコントローラ120に送信する。また、オープンフロースイッチ110は、コントローラ120によりフローテーブルに設定されたフロー情報に従って、テナントサーバから受信したリプライパケットのアドレス情報を書き換えてゲートウェイへ転送する。例えば、オープンフロースイッチ110は、フロー情報に従って、リプライパケットに送信元として記入されている送信元IPアドレスを、データセンタ内にある対応テナントサーバに割り当てられたグローバルアドレスに書き換え、リプライパケットに記入されたテナントサーバ(仮想マシン)のMACアドレスをサーバ0のMACアドレスに書き換え、リプライパケットに付与されているVLANIDを削除する。   When the OpenFlow switch 110 receives a reply packet for the request packet from the tenant server, the OpenFlow switch 110 checks whether there is corresponding flow information. If there is no corresponding flow information in the flow table, the OpenFlow switch 110 transmits an inquiry about flow information for reply packet transfer to the controller 120. Further, the OpenFlow switch 110 rewrites the address information of the reply packet received from the tenant server according to the flow information set in the flow table by the controller 120 and transfers it to the gateway. For example, the OpenFlow switch 110 rewrites the transmission source IP address written as the transmission source in the reply packet with the global address assigned to the corresponding tenant server in the data center according to the flow information, and fills in the reply packet. The MAC address of the tenant server (virtual machine) is rewritten to the MAC address of the server 0, and the VLAN ID assigned to the reply packet is deleted.

コントローラ120は、オープンフロースイッチ110と負荷分散処理部130との間でやり取りされる各種情報を中継し、サーバ0における処理をコントロールする。   The controller 120 relays various information exchanged between the OpenFlow switch 110 and the load distribution processing unit 130, and controls processing in the server 0.

具体的に説明すると、コントローラ120は、オープンフロースイッチ110からarpパケットを受信すると、負荷分散処理部130に転送する。また、コントローラ120は、負荷分散処理部130からMACアドレスを受信すると、このMACアドレスを付与したarpパケット応答命令をオープンフロースイッチ110に送信する。   More specifically, when receiving the arp packet from the OpenFlow switch 110, the controller 120 transfers the arp packet to the load distribution processing unit 130. Further, when the controller 120 receives the MAC address from the load distribution processing unit 130, the controller 120 transmits an arp packet response command to which the MAC address is assigned to the OpenFlow switch 110.

また、コントローラ120は、オープンフロースイッチ110から、リクエストパケットの転送用のフロー情報の問合せを受信すると、負荷分散処理部130に転送する。また、コントローラ120は、負荷分散処理部130から、リクエストパケットの転送用の対応フロー情報を受信すると、オープンフロースイッチ110が有するフローテーブルに対して、対応フロー情報に含まれるプライベートアドレス、リクエストパケットの宛先であるテナントサーバ(仮想マシン)のMACアドレス、リクエストパケットの宛先であるテナントサーバが属する仮想ネットワークのVLANIDを、リクエストパケットの転送用のフロー情報として設定する。   When the controller 120 receives an inquiry about flow information for transferring a request packet from the OpenFlow switch 110, the controller 120 transfers the inquiry to the load distribution processing unit 130. Further, when the controller 120 receives the corresponding flow information for request packet transfer from the load distribution processing unit 130, the controller 120 compares the private address and request packet included in the corresponding flow information with respect to the flow table of the OpenFlow switch 110. The MAC address of the tenant server (virtual machine) that is the destination and the VLAN ID of the virtual network to which the tenant server that is the destination of the request packet belongs are set as flow information for transfer of the request packet.

また、コントローラ120は、オープンフロースイッチ110から、リプライパケットの転送用のフロー情報の問合せを受信すると、負荷分散処理部130に転送する。また、コントローラ120は、負荷分散処理部130から、リプライパケットの転送用の対応フロー情報を受信すると、オープンフロースイッチ110が有するフローテーブルに対して、対応フロー情報に含まれる、リプライパケットの送信元であるテナントサーバのグローバルアドレス、サーバ0のMACアドレスを、リプライパケットの転送用のフロー情報として設定する。   When the controller 120 receives an inquiry about flow information for transferring a reply packet from the OpenFlow switch 110, the controller 120 transfers the inquiry to the load distribution processing unit 130. When the controller 120 receives the corresponding flow information for forwarding the reply packet from the load distribution processing unit 130, the controller 120 sends the reply packet included in the corresponding flow information to the flow table of the OpenFlow switch 110. The global address of the tenant server and the MAC address of the server 0 are set as flow information for reply packet transfer.

負荷分散処理部130は、特定のテナントサーバにアクセスが集中しないように、クライアントからのアクセスを制御する。図2に、負荷分散処理部130の構成例を示す。図2は、負荷分散処理部の構成を示す機能ブロック図である。図2に示すように、負荷分散処理部130は、パケット処理部131と、arp処理部132と、MACアドレス格納部133と、回答送信部134と、リクエストパケット処理部135と、テナントサーバ情報格納部136と、リクエストパケット振分け部137と、リプライパケット処理部138と、リプライ情報格納部139とを有する。   The load distribution processing unit 130 controls access from clients so that access is not concentrated on a specific tenant server. FIG. 2 shows a configuration example of the load distribution processing unit 130. FIG. 2 is a functional block diagram illustrating a configuration of the load distribution processing unit. As shown in FIG. 2, the load distribution processing unit 130 includes a packet processing unit 131, an arp processing unit 132, a MAC address storage unit 133, a response transmission unit 134, a request packet processing unit 135, and tenant server information storage. A unit 136, a request packet distribution unit 137, a reply packet processing unit 138, and a reply information storage unit 139.

具体的に説明すると、パケット処理部131は、コントローラ120からarpパケットを受信した場合には、arpパケットの処理をarp処理部132に指示する。また、パケット処理部131は、リクエストパケットに関するフロー情報の問合せをコントローラ120から受信した場合には、問合せの処理をリクエストパケット処理部135に指示する。また、パケット処理部131は、リプライパケットに関するフロー情報の問合せをコントローラ120から受信した場合には、問合せの処理をリプライパケット処理部138に指示する。   More specifically, when receiving the arp packet from the controller 120, the packet processing unit 131 instructs the arp processing unit 132 to process the arp packet. When the packet processing unit 131 receives a flow information inquiry about the request packet from the controller 120, the packet processing unit 131 instructs the request packet processing unit 135 to perform the inquiry process. When the packet processing unit 131 receives a flow information inquiry regarding a reply packet from the controller 120, the packet processing unit 131 instructs the reply packet processing unit 138 to perform the inquiry process.

arp処理部132は、パケット処理部131からの指示に応じて、arpパケットの処理を実行する。例えば、arp処理部132は、MACアドレス格納部133に格納されているレコードの中に、arpパケットに含まれる問い合わせIPアドレスに対応するMACアドレスがあるかどうかを検索する。arp処理部132は、MACアドレス格納部133からMACアドレスを取得できた場合には、取得したMACアドレスを、回答送信部134を介してコントローラ120に送信する。   The arp processing unit 132 executes arp packet processing in response to an instruction from the packet processing unit 131. For example, the arp processing unit 132 searches whether there is a MAC address corresponding to the inquiry IP address included in the arp packet in the record stored in the MAC address storage unit 133. When the arp processing unit 132 has acquired the MAC address from the MAC address storage unit 133, the arp processing unit 132 transmits the acquired MAC address to the controller 120 via the answer transmission unit 134.

図3に、MACアドレス格納部133に格納されているレコードの一例を示す。図3は、MACアドレス格納部に格納されているレコードの一例を示す図である。図3に示すように、MACアドレス格納部133は、問い合わせIPアドレスとMACアドレスとを対応付けて記憶している。問い合わせIPアドレスは、テナントサーバが外部(クライアントなど)に公開するグローバルアドレスであり、クライアントから送信されるリクエストパケットの宛先に挿入されるアドレスとなる。MACアドレスは、データセンタ内のテナントサーバに対するクライアントからのアクセスを受け付けるためにゲートウェイに応答するMACアドレスであり、負荷分散装置として機能するサーバ0のネットワークインターフェースカード(NIC1、図1参照)に割り当てられたMACアドレスである。実施例1では、MACアドレス格納部133は、例えば、図3に示すように、テナントサーバAの問い合わせIPアドレスである「120.18.20.105」に対応付けて、NIC1に割り当てられたMACアドレスである「AA:B2:10:AA:FF:A4」を記憶する。同様に、MACアドレス格納部133は、例えば、図3に示すように、テナントサーバAの問い合わせIPアドレスである「23.100.51.12」に対応付けて、NIC1に割り当てられたMACアドレスである「AA:B2:10:AA:FF:A4」を記憶する。   FIG. 3 shows an example of a record stored in the MAC address storage unit 133. FIG. 3 is a diagram illustrating an example of a record stored in the MAC address storage unit. As shown in FIG. 3, the MAC address storage unit 133 stores the inquiry IP address and the MAC address in association with each other. The inquiry IP address is a global address that the tenant server discloses to the outside (client, etc.), and is an address that is inserted into the destination of a request packet transmitted from the client. The MAC address is a MAC address that responds to the gateway to accept access from the client to the tenant server in the data center, and is assigned to the network interface card (NIC1, see FIG. 1) of the server 0 that functions as a load balancer. MAC address. In the first embodiment, for example, as illustrated in FIG. 3, the MAC address storage unit 133 associates the inquiry IP address of the tenant server A with “120.18.20.105” and assigns the MAC assigned to the NIC 1. The address “AA: B2: 10: AA: FF: A4” is stored. Similarly, the MAC address storage unit 133 uses the MAC address assigned to the NIC 1 in association with the inquiry IP address “23.100.51.12” of the tenant server A, for example, as shown in FIG. A certain “AA: B2: 10: AA: FF: A4” is stored.

回答送信部134は、コントローラ120へ各種情報を送信する。例えば、回答送信部134は、上述のarp処理部132から送出されたMACアドレスをコントローラ120へ送信する。また、回答送信部134は、後述するリクエストパケット振分け部137から送出されたリクエストパケット転送用のフロー情報をコントローラ120に送信する。なお、このリクエストパケット転送用のフロー情報には、リクエストパケットの宛先となるテナントサーバに割り当てられたプライベートアドレス、このテナントサーバのMACアドレス、このテナントサーバが属する仮想ネットワークのVLANIDが含まれる。また、回答送信部134は、後述するリプライパケット処理部138から送出されたリプライパケット転送用のフロー情報をコントローラ120に送信する。なお、このリプライパケット転送用のフロー情報には、リプライパケットの送信元であるテナントサーバに割り当てられたグローバルアドレス、サーバ0のMACアドレスが含まれる。   The answer transmission unit 134 transmits various information to the controller 120. For example, the answer transmission unit 134 transmits the MAC address transmitted from the above-described arp processing unit 132 to the controller 120. Further, the reply transmission unit 134 transmits flow information for request packet transfer sent from the request packet distribution unit 137 described later to the controller 120. Note that the flow information for request packet transfer includes the private address assigned to the tenant server that is the destination of the request packet, the MAC address of the tenant server, and the VLAN ID of the virtual network to which the tenant server belongs. The reply transmission unit 134 transmits flow information for reply packet transfer sent from the reply packet processing unit 138 described later to the controller 120. Note that the flow information for reply packet transfer includes the global address assigned to the tenant server that is the transmission source of the reply packet and the MAC address of the server 0.

リクエストパケット処理部135は、パケット処理部131からの指示に応じて、リクエストパケットの処理を実行する。例えば、リクエストパケット処理部135は、リクエストパケットに関するフロー情報の問合せ処理の指示があると、リクエストパケットの転送先IPアドレスと同一のアドレスに対応付けられたテナントサーバリストおよびVLANIDをテナントサーバ情報格納部136から取得する。そして、リクエストパケット処理部135は、取得したテナントサーバリストおよびVLANIDをリクエストパケット振分け部137に送出する。   The request packet processing unit 135 executes request packet processing in response to an instruction from the packet processing unit 131. For example, when there is an instruction to process the flow information related to the request packet, the request packet processing unit 135 displays the tenant server list and VLAN ID associated with the same address as the transfer destination IP address of the request packet as the tenant server information storage unit. Obtained from 136. Then, the request packet processing unit 135 sends the acquired tenant server list and VLANID to the request packet distribution unit 137.

図4に、実施例1に係るテナントサーバ情報格納部136に格納されているレコードの一例を示す。図4は、実施例1に係るテナントサーバ情報格納部に格納されているレコードの一例を示す図である。図4に示すように、テナントサーバ情報格納部136は、テナントサーバが外部(クライアントなど)に公開するグローバルアドレスであるテナントサーバアドレスに対応付けて、テナントサーバとして物理サーバ内で稼動する仮想マシンに割り当てられた仮想的なプライベートアドレスと、仮想マシンに割り当てられている仮想的なMACアドレスとの組合せの一覧を、テナントサーバリストとして記憶するとともに、データセンタ内に構築される仮想ネットワークのうちテナントサーバとして稼動する仮想マシンが属する仮想ネットワークを識別するために仮想ネットワークごとに固有に付与されたVLANIDを記憶する。例えば、テナントサーバ情報格納部136は、テナントAが公開するグローバルアドレス「120.18.20.105」に対応付けて、テナントサーバAとしてサーバ1内で稼動する仮想マシンA.1に割り当てられたプライベートアドレス「192.168.100.20」とMACアドレス「52:20:00:AA:FF:A4」の対、テナントサーバAとしてサーバ1内で稼動する仮想マシンA.2に割り当てられたプライベートアドレス「192.168.100.21」とMACアドレス「52:20:00:AA:FF:A5」の対、テナントサーバAとしてサーバ2内で稼動する仮想マシンA.3に割り当てられたプライベートアドレス「192.168.100.22」とMACアドレス「52:20:00:AA:FF:A6」の対、テナントサーバAとしてサーバ2内で稼動する仮想マシンA.4に割り当てられたプライベートアドレス「192.168.100.23」とMACアドレス「52:20:00:AA:FF:A7」の対をテナントサーバリストとして記憶するとともに、テナントサーバAとしてサーバ1およびサーバ内2内で稼動する4つの仮想マシンA.1〜A.4が属する仮想ネットワークの識別子「VLANID=20」を記憶している。同様に、テナントサーバ情報格納部136は、テナントBが公開するグローバルアドレス「23.100.51.12」に対応付けて、テナントサーバBとしてサーバ3内で稼動する仮想マシンB.1に割り当てられたプライベートアドレス「192.168.100.24」とMACアドレス「52:20:00:AA:FF:B4」の対、テナントサーバBとしてサーバ3内で稼動する仮想マシンB.2に割り当てられたプライベートアドレス「192.168.100.25」とMACアドレス「52:20:00:AA:FF:B5」の対、テナントサーバBとしてサーバ4内で稼動する仮想マシンB.3に割り当てられたプライベートアドレス「192.168.100.26」とMACアドレス「52:20:00:AA:FF:B6」の対、テナントサーバBとしてサーバ4内で稼動する仮想マシンB.4に割り当てられたプライベートアドレス「192.168.100.27」とMACアドレス「52:20:00:AA:FF:B7」の対をテナントサーバリストとして記憶するとともに、テナントサーバBとしてサーバ3およびサーバ4内で稼動する4つの仮想マシンB.1〜B.4が属する仮想ネットワークの識別子「VLANID=40」が記憶されている。   FIG. 4 illustrates an example of records stored in the tenant server information storage unit 136 according to the first embodiment. FIG. 4 is a diagram illustrating an example of records stored in the tenant server information storage unit according to the first embodiment. As shown in FIG. 4, the tenant server information storage unit 136 is associated with a tenant server address that is a global address that the tenant server exposes to the outside (client, etc.) to a virtual machine that operates in the physical server as a tenant server. A list of combinations of assigned virtual private addresses and virtual MAC addresses assigned to virtual machines is stored as a tenant server list, and a tenant server in a virtual network constructed in the data center. In order to identify a virtual network to which a virtual machine that operates as a virtual machine belongs, a VLAN ID uniquely assigned to each virtual network is stored. For example, the tenant server information storage unit 136 associates with the global address “120.18.20.105” disclosed by the tenant A, the virtual machine A. A virtual machine A.1 that operates in the server 1 as the tenant server A is a pair of the private address “192.168.100.20” and the MAC address “52: 20: 00: AA: FF: A4” assigned to A virtual machine A.2 running in the server 2 as a tenant server A is a pair of the private address “192.168.100.21” and the MAC address “52: 20: 00: AA: FF: A5” assigned to the server 2. A virtual machine A.3 that operates in the server 2 as the tenant server A is a pair of the private address “192.168.100.22” and the MAC address “52: 20: 00: AA: FF: A6” assigned to 4 stores the pair of private address “192.168.100.23” and MAC address “52: 20: 00: AA: FF: A7” assigned to 4 as a tenant server list, Four virtual machines running in the server 2 1-A. 4 stores the identifier “VLANID = 20” of the virtual network to which 4 belongs. Similarly, the tenant server information storage unit 136 is associated with the global address “23.100.51.12” disclosed by the tenant B, and the virtual machine B. Virtual machine B. which operates in the server 3 as the tenant server B, with the private address “192.168.100.24” assigned to 1 and the MAC address “52: 20: 00: AA: FF: B4”. Virtual machine B. which operates in the server 4 as the tenant server B, with the private address “192.168.100.25” and the MAC address “52: 20: 00: AA: FF: B5” assigned to A virtual machine B. which operates in the server 4 as the tenant server B is a pair of the private address “192.168.100.26” and the MAC address “52: 20: 00: AA: FF: B6” assigned to the server 3. 4 stores a pair of private address “192.168.100.27” and MAC address “52: 20: 00: AA: FF: B7” assigned to 4 as a tenant server list, Four virtual machines running in the server 4 1-B. The identifier “VLANID = 40” of the virtual network to which 4 belongs is stored.

リクエストパケット振分け部137は、リクエストパケットの振り分け先を決定する処理を行う。例えば、リクエストパケット振分け部137は、リクエストパケット処理部135から、テナントサーバリストおよびVLANIDを受け取ると、テナントサーバリスト(テナントサーバとして稼動する複数の仮想マシンのそれぞれに対応するプライベートアドレスとMACアドレスとの組合せの一覧)の中から、公知の分散アルゴリズムを利用して、リクエストパケットの振り分ける先を決定する。分散アルゴリズムとしては、スタティック負荷分散やダイナミック負荷分散のどちらを利用してもよく、例えば、スタティック負荷分散であればラウンドロビン、ダイナミック負荷分散であれば最速応答時間、最小負荷、最小コネクションなどを利用することができる。なお、分散アルゴリズムを利用した負荷分散技術には、例えば、「DNSを用いた広域負荷分散の実装(情報処理学会研究報告、1998年5月15日)」などがある。そして、リクエストパケット振分け部137は、リクエストパケットの振り分け先を決定すると、振り分け先として決定した仮想マシンに割り当てられているプライベートアドレスおよびMACアドレス、振り分け先の仮想マシンが属する仮想ネットワークを識別するVLANIDをフロー情報として、回答送信部134に送出する。   The request packet distribution unit 137 performs processing for determining a request packet distribution destination. For example, when the request packet distribution unit 137 receives the tenant server list and the VLAN ID from the request packet processing unit 135, the request packet distribution unit 137 includes a tenant server list (a private address and a MAC address corresponding to each of a plurality of virtual machines operating as tenant servers). From the list of combinations), a distribution destination of the request packet is determined using a known distribution algorithm. As the distribution algorithm, either static load distribution or dynamic load distribution may be used. For example, round load is used for static load distribution, and the fastest response time, minimum load, and minimum connection are used for dynamic load distribution. can do. Note that load distribution technology using a distribution algorithm includes, for example, “Implementation of Wide Area Load Distribution Using DNS (Information Processing Society of Japan Research Report, May 15, 1998)”. Then, when the request packet distribution unit 137 determines the distribution destination of the request packet, the private address and MAC address assigned to the virtual machine determined as the distribution destination, and the VLAN ID for identifying the virtual network to which the virtual machine of the distribution destination belongs. As flow information, it is sent to the answer transmitter 134.

リプライパケット処理部138は、パケット処理部131からの指示に応じて、リプライパケットの処理を実行する。例えば、リプライパケット処理部138は、リプライパケットに関するフロー情報の問合せ処理の指示があると、リプライパケットの送信元IPアドレスと同一のアドレスに対応付けられたグローバルアドレスおよびMACアドレスをリプライ情報格納部139から取得する。そして、リプライパケット処理部138は、取得したグローバルアドレスおよびMACアドレスを回答送信部134に送出する。   The reply packet processing unit 138 executes reply packet processing in response to an instruction from the packet processing unit 131. For example, when there is a flow information inquiry processing instruction regarding a reply packet, the reply packet processing unit 138 indicates a global address and a MAC address associated with the same address as the transmission source IP address of the reply packet. Get from. Then, the reply packet processing unit 138 sends the acquired global address and MAC address to the reply transmission unit 134.

図5に、実施例1に係るリプライ情報格納部139に格納されているレコードの一例を示す。図5は、実施例1に係るリプライ情報格納部に格納されているレコードの一例を示す図である。図5に示すように、リプライ情報格納部139は、リプライパケットの送信元アドレスとなり得る送信元IPアドレス(プライベートアドレス)に対応付けて、サーバ0に搭載されたネットワークインターフェースカード(NIC1)のMACアドレスおよびテナントサーバのグローバルなIPアドレスを記憶する。なお、図5に示すIPアドレス(グローバル)は、リプライパケットの送信元であるテナントサーバが外部(クライアントなど)に公開するIPアドレス(図4のグローバルなIPアドレスと同一のアドレス)である。また、MACアドレスは、上述したように、負荷分散装置として機能するサーバ0のネットワークインターフェースカードであるNIC1(図1参照)に割り当てられたMACアドレス(例えば、「AA:B2:10:AA:FF:A4」)であり、データセンタ内のテナントサーバに対するクライアントからのアクセスを受け付けるためにゲートウェイに応答するMACアドレスとなる。   FIG. 5 illustrates an example of records stored in the reply information storage unit 139 according to the first embodiment. FIG. 5 is a diagram illustrating an example of records stored in the reply information storage unit according to the first embodiment. As illustrated in FIG. 5, the reply information storage unit 139 associates with the transmission source IP address (private address) that can be the transmission source address of the reply packet, and the MAC address of the network interface card (NIC1) mounted on the server 0. And the global IP address of the tenant server. Note that the IP address (global) shown in FIG. 5 is an IP address (the same address as the global IP address in FIG. 4) disclosed to the outside (client or the like) by the tenant server that is the transmission source of the reply packet. Further, as described above, the MAC address is the MAC address (for example, “AA: B2: 10: AA: FF” assigned to the NIC1 (see FIG. 1) which is the network interface card of the server 0 functioning as the load balancer. : A4 "), and the MAC address that responds to the gateway to accept access from the client to the tenant server in the data center.

なお、サーバ0は、例えば、アプリケーションソフトや周辺機器の監視、ディスクやメモリなどの資源の管理、割り込み処理、プロセス間通信などの機能を実現する所定のOS(Operating System)が動作する情報処理装置であればよい。   The server 0 is, for example, an information processing apparatus that operates a predetermined OS (Operating System) that realizes functions such as monitoring of application software and peripheral devices, management of resources such as disks and memories, interrupt processing, and interprocess communication. If it is.

[実施例1における処理]
図6を用いて、実施例1に係るデータセンタにおける処理の流れを説明する。図6は、実施例1に係る処理の流れを示す図である。なお、以下では、オープンフロースイッチ110が有するフローテーブルに、パケットの転送用のフロー情報が設定されていない状態での処理の流れを説明する。
[Processing in Example 1]
The process flow in the data center according to the first embodiment will be described with reference to FIG. FIG. 6 is a diagram illustrating a flow of processing according to the first embodiment. In the following, the flow of processing in a state where flow information for packet transfer is not set in the flow table of the OpenFlow switch 110 will be described.

図6に示すように、クライアントはテナントサーバへのHTTPパケットを送信する(S101)。ゲートウェイは、テナントサーバへのHTTPパケットをクライアントから受信すると、テナントサーバへのarpパケットを送信する(S102)。   As shown in FIG. 6, the client transmits an HTTP packet to the tenant server (S101). When the gateway receives an HTTP packet to the tenant server from the client, the gateway transmits an arp packet to the tenant server (S102).

オープンフロースイッチ110は、ゲートウェイからarpパケットを受信すると、コントローラ120に転送する(S103)。コントローラ120は、オープンフロースイッチ110からarpパケットを受信すると、負荷分散処理部130に転送する(S104)。   When receiving the arp packet from the gateway, the OpenFlow switch 110 transfers the arp packet to the controller 120 (S103). When receiving the arp packet from the open flow switch 110, the controller 120 transfers the arp packet to the load distribution processing unit 130 (S104).

負荷分散処理部130は、コントローラ120からarpパケットを受信した場合には、MACアドレス(G)を解決してコントローラ120に送信する(S105)。例えば、負荷分散処理部130は、arpパケットに含まれる問い合わせIPアドレスに対応するMACアドレスがあるかどうかを検索し、取得したMACアドレスを、コントローラ120に送信する。なお、MACアドレス(G)は、データセンタ内のテナントサーバにアクセスさせるために外部に公開するグローバルなMACアドレスを意味し、実施例1では、外部とデータセンタとの通信の中継地点となるサーバ0のネットワークインターフェースカード(NIC1、図1参照)に割り当てられたMACアドレスとなる。   When receiving the arp packet from the controller 120, the load distribution processing unit 130 resolves the MAC address (G) and transmits it to the controller 120 (S105). For example, the load distribution processing unit 130 searches for a MAC address corresponding to the inquiry IP address included in the arp packet, and transmits the acquired MAC address to the controller 120. The MAC address (G) means a global MAC address that is disclosed to the outside in order to access a tenant server in the data center. In the first embodiment, a server that serves as a relay point for communication between the outside and the data center. This is the MAC address assigned to the network interface card 0 (NIC1, see FIG. 1).

コントローラ120は、負荷分散処理部130からMACアドレスを受信すると、このMACアドレスを付与したarpパケット応答命令をオープンフロースイッチ110に送信する(S106)。オープンフロースイッチ110は、コントローラ120からarpパケット応答命令を受信すると、arpパケット応答をゲートウェイに転送する(S107)。   When the controller 120 receives the MAC address from the load distribution processing unit 130, the controller 120 transmits an arp packet response command to which the MAC address is assigned to the OpenFlow switch 110 (S106). When receiving the arp packet response command from the controller 120, the OpenFlow switch 110 transfers the arp packet response to the gateway (S107).

ゲートウェイは、オープンフロースイッチ110からarpパケット応答を受信すると、クライアントから受信した、テナントサーバへのリクエストパケットであるHTTP(Hypertext Transfer Protocol)パケットを送信する(S108)。   When the gateway receives the arp packet response from the OpenFlow switch 110, the gateway transmits an HTTP (Hypertext Transfer Protocol) packet, which is a request packet to the tenant server, received from the client (S108).

オープンフロースイッチ110は、ゲートウェイから、テナントサーバへのリクエストパケットであるHTTPパケットを受信すると、リクエストパケットの転送先IPアドレスに対応するフロー情報(リクエストパケットの転送手順対応のフロー情報)の問合せをコントローラ120に送信する(S109)。   When the OpenFlow switch 110 receives an HTTP packet, which is a request packet to the tenant server, from the gateway, the controller sends an inquiry about the flow information (flow information corresponding to the transfer procedure of the request packet) corresponding to the transfer destination IP address of the request packet. It transmits to 120 (S109).

コントローラ120は、オープンフロースイッチ110から、フロー情報(リクエストパケットの転送手順対応のフロー情報)の問合せを受信すると、負荷分散処理部130に転送する(S110)。   When receiving an inquiry about flow information (flow information corresponding to the transfer procedure of the request packet) from the OpenFlow switch 110, the controller 120 transfers the inquiry to the load distribution processing unit 130 (S110).

負荷分散処理部130は、リクエストパケットに関するフロー情報の問合せをコントローラ120から受信した場合には、次のように処理を行う。すなわち、リクエストパケット処理部135は、リクエストパケットの転送先IPアドレスに対応付けられたテナントサーバリストおよびVLANIDをテナントサーバ情報格納部136から取得する(S111)。続いて、リクエストパケット振分け部137は、リクエストパケット処理部135から、テナントサーバリストおよびVLANIDを受け取ると、テナントサーバリストの中から、公知の分散アルゴリズムを利用して、リクエストパケットの振り分ける先(転送先IPアドレス(P))を決定する(S112)。なお、転送先IPアドレス(P)は、テナントサーバとして物理サーバ内で稼動する仮想マシンの各々に割り当てられたプライベートアドレスのうち、振り分け先に決定された仮想マシンに割り当てられているプライベートアドレスを意味する。続いて、回答送信部134は、転送先IPアドレス(P)、MACアドレス(P)およびVLANIDを、対応フロー情報としてコントローラ120に応答送信する(S113)。なお、MACアドレス(P)は、振り分け先に決定された仮想マシンに割り当てられている仮想的なMACアドレスを意味する。   When the load distribution processing unit 130 receives an inquiry about the flow information regarding the request packet from the controller 120, the load distribution processing unit 130 performs the following process. That is, the request packet processing unit 135 acquires the tenant server list and VLAN ID associated with the transfer destination IP address of the request packet from the tenant server information storage unit 136 (S111). Subsequently, when the request packet distribution unit 137 receives the tenant server list and the VLAN ID from the request packet processing unit 135, the request packet distribution unit 137 uses a known distribution algorithm from the tenant server list to distribute the request packet (transfer destination). IP address (P)) is determined (S112). The transfer destination IP address (P) means a private address assigned to a virtual machine determined as a distribution destination among private addresses assigned to each virtual machine operating in a physical server as a tenant server. To do. Subsequently, the response transmission unit 134 responds and transmits the transfer destination IP address (P), the MAC address (P), and the VLANID to the controller 120 as corresponding flow information (S113). The MAC address (P) means a virtual MAC address assigned to the virtual machine determined as the distribution destination.

コントローラ120は、負荷分散処理部130から、リクエストパケット転送用のフロー情報を受信すると、オープンフロースイッチ110が有するフローテーブルにフロー情報(転送先IPアドレス(P)、MACアドレス(P)、VLANID)を設定する(S114)。   When the controller 120 receives the flow information for request packet transfer from the load distribution processing unit 130, the flow information (transfer destination IP address (P), MAC address (P), VLANID) is added to the flow table of the OpenFlow switch 110. Is set (S114).

オープンフロースイッチ110は、コントローラ120によりフローテーブルに設定されたフロー情報に基づいて、ゲートウェイから受信したリクエストパケットのアドレス情報の書き換えを実行し、VLANIDを付与した後(S115)、テナントサーバへ転送する(S116)。すなわち、ステップS115、S116の処理では、オープンフロースイッチ110が、フロー情報に従って、リクエストパケットの宛先として記入されている転送先IPアドレスを、データセンタ内にある対応テナントサーバに割り当てられたプライベートアドレスに書き換え、データセンタ内にある対応テナントサーバのMACアドレスをリクエストパケットに記入し、データセンタ内にある対応テナントサーバが属する仮想ネットワークのVLANIDをリクエストパケットに付与して、リクエストパケットを宛先のテナントサーバへ転送する処理である。   The OpenFlow switch 110 rewrites the address information of the request packet received from the gateway based on the flow information set in the flow table by the controller 120, assigns the VLAN ID (S115), and transfers it to the tenant server. (S116). That is, in the processing of steps S115 and S116, the OpenFlow switch 110 changes the transfer destination IP address written as the destination of the request packet to the private address assigned to the corresponding tenant server in the data center according to the flow information. Rewrite, enter the MAC address of the corresponding tenant server in the data center in the request packet, add the VLAN ID of the virtual network to which the corresponding tenant server in the data center belongs to the request packet, and send the request packet to the destination tenant server It is a process to transfer.

テナントサーバは、リクエストパケットに対するリプライパケットをサーバ0(オープンフロースイッチ110)に返信する(S117)。オープンフロースイッチ110は、テナントサーバから、リクエストパケットに対するリプライパケットを受信すると、リプライパケット転送用のフロー情報の問合せをコントローラ120に送信する(S118)。   The tenant server returns a reply packet for the request packet to the server 0 (OpenFlow switch 110) (S117). When the OpenFlow switch 110 receives a reply packet for the request packet from the tenant server, the OpenFlow switch 110 transmits an inquiry about flow information for reply packet transfer to the controller 120 (S118).

コントローラ120は、オープンフロースイッチ110から、リプライパケット転送用のフロー情報の問合せを受信すると、負荷分散処理部130に転送する(S119)。   When receiving an inquiry about flow information for reply packet transfer from the OpenFlow switch 110, the controller 120 transfers it to the load distribution processing unit 130 (S119).

負荷分散処理部130は、リプライパケットに関するフロー情報の問合せをコントローラ120から受信した場合には、次のように処理を行う。すなわち、リプライパケット処理部138は、リプライパケットの送信元IPアドレスと同一のアドレスに対応付けられたIPアドレス(G)およびMACアドレス(G)をリプライ情報格納部139から取得する(S120)。続いて、回答送信部134は、IPアドレス(G)およびMACアドレス(G)をコントローラ120に応答送信する(S121)。なお、IPアドレス(G)は、リプライパケットの送信元であるテナントサーバが外部(クライアントなど)に公開するIPアドレスであり、MACアドレス(G)は、負荷分散装置として機能するサーバ0のネットワークインターフェースカード(NIC1、図1参照)に割り当てられたMACアドレスである。   When the load distribution processing unit 130 receives an inquiry about the flow information regarding the reply packet from the controller 120, the load distribution processing unit 130 performs the following process. That is, the reply packet processing unit 138 acquires the IP address (G) and the MAC address (G) associated with the same address as the transmission source IP address of the reply packet from the reply information storage unit 139 (S120). Subsequently, the reply transmission unit 134 transmits the IP address (G) and the MAC address (G) in response to the controller 120 (S121). The IP address (G) is an IP address disclosed to the outside (client, etc.) by the tenant server that is the transmission source of the reply packet, and the MAC address (G) is a network interface of the server 0 that functions as a load balancer. This is the MAC address assigned to the card (NIC1, see FIG. 1).

コントローラ120は、負荷分散処理部130から、リプライパケット転送用のフロー情報を受信すると、オープンフロースイッチ110が有するフローテーブルにフロー情報(IPアドレス(G)、MACアドレス(G))を設定する(S122)。   When the controller 120 receives the flow information for the reply packet transfer from the load distribution processing unit 130, the controller 120 sets the flow information (IP address (G), MAC address (G)) in the flow table of the OpenFlow switch 110 ( S122).

オープンフロースイッチ110は、コントローラ120によりフローテーブルに設定されたフロー情報に従って、テナントサーバから受信したリプライパケットのアドレス情報の書き換えを実行し、VLANIDを削除した後(S123)、ゲートウェイへ転送する(S124)。すなわち、ステップS123、S124の処理では、オープンフロースイッチ110が、フロー情報に従って、リプライパケットに送信元として記入されている送信元IPアドレスを、データセンタ内にある対応テナントサーバに割り当てられたグローバルアドレスに書き換え、リプライパケットに記入されたテナントサーバ(仮想マシン)のMACアドレスをサーバ0のMACアドレスに書き換え、リプライパケットに付与されているVLANIDを削除し、転送する処理である。   The OpenFlow switch 110 rewrites the address information of the reply packet received from the tenant server in accordance with the flow information set in the flow table by the controller 120, deletes the VLANID (S123), and transfers it to the gateway (S124). ). That is, in the processing of steps S123 and S124, the OpenFlow switch 110 uses the global IP address assigned to the corresponding tenant server in the data center by using the source IP address written as the source in the reply packet according to the flow information. The MAC address of the tenant server (virtual machine) written in the reply packet is rewritten to the MAC address of the server 0, and the VLAN ID assigned to the reply packet is deleted and transferred.

そして、データセンタ(サーバ0)から送信されたリプライパケットは、ゲートウェイを介して、リクエストパケットの送信元であるクライアントの元に届けられる。   Then, the reply packet transmitted from the data center (server 0) is delivered to the client that is the transmission source of the request packet via the gateway.

[実施例1による効果]
上述してきたように、実施例1に係る負荷分散システムでは、データセンタ内に配置された複数のサーバのうち、1つのサーバ(サーバ0)を、負荷分散装置として機能させる。これにより、テナントの増加予測数に応じて高価な負荷分散装置を予め用意するためのコスト負担が必要なく、テナントの増加予測数に応じた数の装置を予め準備するといった設備計画の困難性からも開放される。
[Effects of Example 1]
As described above, in the load distribution system according to the first embodiment, one server (server 0) among the plurality of servers arranged in the data center is caused to function as a load distribution apparatus. As a result, there is no cost burden for preparing an expensive load distribution device in advance according to the expected increase in the number of tenants, and the difficulty in facility planning such as preparing in advance the number of devices according to the expected increase in the number of tenants. Is also released.

また、実施例1に係る負荷分散システムでは、リクエストパケットの転送先IPアドレスに基づいて、リクエストパケットの宛先となるテナントサーバおよびVLANIDを特定し、テナントサーバとして稼動する複数の仮想マシンの中から、リクエストパケットの振り分け先を公知の分散アルゴリズムに基づいて決定して、リクエストパケットを転送する為のフロー情報をオープンフロースイッチ110のフローテーブルに設定する。これにより、仮想ネットワーク単位で、テナントサーバへのアクセスを制御することができる。   Further, in the load distribution system according to the first embodiment, the tenant server and the VLAN ID that are the destination of the request packet are identified based on the transfer destination IP address of the request packet, and the virtual machine that operates as the tenant server is selected from among a plurality of virtual machines. The distribution destination of the request packet is determined based on a known distribution algorithm, and flow information for transferring the request packet is set in the flow table of the OpenFlow switch 110. Thereby, it is possible to control access to the tenant server in units of virtual networks.

このようなことから、実施例1によれば、コスト負担を抑えつつ、仮想ネットワークと上手く連動させた負荷分散を実現できる。   For this reason, according to the first embodiment, it is possible to realize load distribution that is well linked with the virtual network while suppressing the cost burden.

また、実施例1に係る負荷分散システムでは、リクエストパケットに対するテナントサーバからのリプライパケットのアドレス情報を、再び、グローバルなアドレス情報に変換するためのフロー情報をオープンフロースイッチ110のフローテーブルに設定する。これにより、仮想ネットワーク単位でテナントサーバへのアクセスを制御する場合に、リクエストに対するリプライのアドレス情報をグローバルなアドレス情報に変換した状態で、リクエスト送信元であるクライアントに転送できる。   In the load distribution system according to the first embodiment, the flow information for converting the address information of the reply packet from the tenant server for the request packet into the global address information is set again in the flow table of the OpenFlow switch 110. . As a result, when controlling access to the tenant server in units of virtual networks, the reply address information for the request can be transferred to the client that is the request transmission source in a state in which the address information is converted into global address information.

また、上述した実施例1では、データセンタ内に配置された物理サーバ内で稼動する複数の仮想マシンをテナントに提供する場合について、仮想ネットワーク単位で、テナントサーバへのアクセスを制御する処理を説明したが、仮想マシンではなく、物理サーバ自体をテナントに提供する場合も同様に適用することができる。例えば、テナントサーバとして提供される複数の物理サーバの中から、リクエストパケットの振り分け先を公知の分散アルゴリズムに基づいて決定する場合には、まず、リクエストパケットの転送先IPアドレスと同一のアドレスに対応付けられたVLANIDが同一であるプライベートアドレス(または、プライベートアドレスとMACアドレスの対)を取得できるように、リクエストパケット処理部135やテナントサーバ情報格納部136を構成しておく。これにより、物理サーバ自体をテナントに提供する場合も、コスト負担を抑えつつ、仮想ネットワークと上手く連動させた負荷分散を実現できる。   In the first embodiment described above, a process for controlling access to a tenant server in units of virtual networks when a plurality of virtual machines operating in a physical server arranged in a data center is provided to a tenant is described. However, the present invention can be similarly applied to the case where the physical server itself is provided to the tenant instead of the virtual machine. For example, when a request packet distribution destination is determined from a plurality of physical servers provided as a tenant server based on a well-known distribution algorithm, first, it corresponds to the same address as the transfer destination IP address of the request packet The request packet processing unit 135 and the tenant server information storage unit 136 are configured so that a private address (or a pair of a private address and a MAC address) with the same VLAN ID can be acquired. As a result, even when the physical server itself is provided to the tenant, it is possible to realize load distribution that is well linked with the virtual network while suppressing the cost burden.

図7に、実施例2に係るデータセンタの構成例を示す。図7は、実施例2に係るデータセンタの構成例を示す図である。図7に示すように、データセンタ内に構築された複数の仮想ネットワーク(VLAN=20、VLAN=40)の境界が、データセンタ内に配置された複数のサーバの中のある1つのサーバ2内にある場合についても、上述した実施例1の処理(図6)を適用することにより、仮想ネットワーク単位で、テナントサーバへのアクセスを制御することができる。   FIG. 7 illustrates a configuration example of a data center according to the second embodiment. FIG. 7 is a diagram illustrating a configuration example of a data center according to the second embodiment. As shown in FIG. 7, the boundaries of a plurality of virtual networks (VLAN = 20, VLAN = 40) constructed in the data center are within one server 2 among the plurality of servers arranged in the data center. Also in the case of the above, it is possible to control access to the tenant server in units of virtual networks by applying the above-described processing of the first embodiment (FIG. 6).

例えば、図7に示すサーバ1〜4には、ブリッジの代わりに、オープンフロースイッチを設置する。これにより、例えば、データセンタに負荷に応じて、サーバ数を柔軟に変更することができる。   For example, an open flow switch is installed in the servers 1 to 4 shown in FIG. 7 instead of the bridge. Thereby, for example, the number of servers can be flexibly changed according to the load on the data center.

そして、図7に示すように、サーバ2では、VLAN=20の仮想ネットワークに属する仮想マシンA.3と、VLAN=40の仮想ネットワークに属する仮想マシンB.0が稼動している。これに応じて、サーバ0が有する負荷分散処理部130のテナントサーバ情報格納部136およびリプライ情報格納部139のレコードを書き換えることにより、上述した実施例1の処理(図6)を適用できる。以下、実施例2に係るテナントサーバ情報格納部136のレコードの構成例、および実施例2に係るリプライ情報格納部139のレコードの構成例を説明する。   As shown in FIG. 7, in the server 2, the virtual machines A.A and B belonging to the virtual network of VLAN = 20. 3 and virtual machine B.1 belonging to the virtual network of VLAN = 40. 0 is in operation. Accordingly, by rewriting the records of the tenant server information storage unit 136 and the reply information storage unit 139 of the load distribution processing unit 130 of the server 0, the above-described processing of the first embodiment (FIG. 6) can be applied. Hereinafter, a configuration example of a record of the tenant server information storage unit 136 according to the second embodiment and a configuration example of a record of the reply information storage unit 139 according to the second embodiment will be described.

図8に、実施例2に係るテナントサーバ情報格納部136に格納されているレコードの一例を示す。図8は、実施例2に係るテナントサーバ情報格納部に格納されているレコードの一例を示す図である。図8に示すように、テナントサーバ情報格納部136は、実施例2に係るデータセンタの構成に応じた情報を記憶しており、例えば、テナントAがクライアントなどに公開するグローバルアドレス「120.18.20.105」に対応付けて、データセンタ内でテナントサーバとして稼動する仮想マシンA.1に割り当てられたプライベートアドレス「192.168.100.20」とMACアドレス「52:20:00:AA:FF:A4」の対、仮想マシンA.2に割り当てられたプライベートアドレス「192.168.100.21」とMACアドレス「52:20:00:AA:FF:A5」の対、仮想マシンA.3に割り当てられたプライベートアドレス「192.168.100.22」とMACアドレス「52:20:00:AA:FF:A6」の対を記憶するとともに、テナントサーバAとして稼動する3つの仮想マシンA.1〜A.3が属する仮想ネットワークのVLANID「20」が記憶されている。また、図8に示すように、テナントサーバ情報格納部136は、テナントBが外部に公開するグローバルアドレス「23.100.51.12」に対応付けて、データセンタ内でテナントサーバとして稼動する仮想マシンB.0に割り当てられたプライベートアドレス「192.168.100.23」とMACアドレス「52:20:00:AA:FF:B4」の対、データセンタ内でテナントサーバとして稼動する仮想マシンB.1に割り当てられたプライベートアドレス「192.168.100.24」とMACアドレス「52:20:00:AA:FF:B5」の対、仮想マシンB.2に割り当てられたプライベートアドレス「192.168.100.25」とMACアドレス「52:20:00:AA:FF:B6」の対、仮想マシンB.3に割り当てられたプライベートアドレス「192.168.100.26」とMACアドレス「52:20:00:AA:FF:B7」の対、仮想マシンB.4に割り当てられたプライベートアドレス「192.168.100.27」とMACアドレス「52:20:00:AA:FF:B8」の対をテナントサーバリストとして記憶するとともに、テナントサーバBとして稼動する5つの仮想マシンB.0〜B.4が属する仮想ネットワークのVLANID「40」が記憶されている。   FIG. 8 illustrates an example of records stored in the tenant server information storage unit 136 according to the second embodiment. FIG. 8 is a diagram illustrating an example of records stored in the tenant server information storage unit according to the second embodiment. As illustrated in FIG. 8, the tenant server information storage unit 136 stores information according to the configuration of the data center according to the second embodiment. For example, the global address “120.18 that tenant A discloses to clients and the like is stored. .. 20.105 ”, a virtual machine that operates as a tenant server in the data center. 1 is a pair of the private address “192.168.100.20” and the MAC address “52: 20: 00: AA: FF: A4” assigned to the virtual machine A.1. 2 is a pair of the private address “192.168.100.21” and the MAC address “52: 20: 00: AA: FF: A5” assigned to the virtual machine A.2. 3 virtual machines A that store the pair of private address “192.168.100.22” and MAC address “52: 20: 00: AA: FF: A6” assigned to 3 and operate as tenant server A . 1-A. The VLAN ID “20” of the virtual network to which 3 belongs is stored. In addition, as illustrated in FIG. 8, the tenant server information storage unit 136 associates with the global address “23.100.51.12” publicly disclosed by the tenant B and operates as a virtual server that operates as a tenant server in the data center. Machine B. Virtual machine B. which operates as a tenant server in the data center, with a private address “192.168.100.23” assigned to 0 and a MAC address “52: 20: 00: AA: FF: B4”. 1 is a pair of the private address “192.168.100.24” and the MAC address “52: 20: 00: AA: FF: B5” assigned to the virtual machine B.1. 2 is a pair of the private address “192.168.100.25” and the MAC address “52: 20: 00: AA: FF: B6” assigned to the virtual machine B.2. 3 is a pair of the private address “192.168.100.26” and the MAC address “52: 20: 00: AA: FF: B7” assigned to the virtual machine B.3. The private address “192.168.100.27” assigned to 4 and the MAC address “52: 20: 00: AA: FF: B8” are stored as a tenant server list and operated as a tenant server B 5 One virtual machine B. 0-B. VLAN ID “40” of the virtual network to which 4 belongs is stored.

図9に、実施例2に係るリプライ情報格納部139に格納されているレコードの一例を示す。図9は、実施例2に係るリプライ情報格納部に格納されているレコードの一例を示す図である。図9に示すように、リプライ情報格納部139は、実施例2に係るデータセンタの構成に応じた情報を記憶しており、例えば、リプライパケットの送信元アドレスとなり得る送信元IPアドレス(「192.168.100.20」〜「192.168.100.27」)に対応付けて、サーバ0に搭載されたネットワークインターフェースカード(NIC1)のMACアドレス(例えば、「AA:B2:10:AA:FF:A4」)およびテナントサーバのグローバルなIPアドレス(例えば、「120.18.20.105」もしくは「23.100.51.12」)を記憶する。   FIG. 9 illustrates an example of records stored in the reply information storage unit 139 according to the second embodiment. FIG. 9 is a diagram illustrating an example of records stored in the reply information storage unit according to the second embodiment. As illustrated in FIG. 9, the reply information storage unit 139 stores information according to the configuration of the data center according to the second embodiment. For example, the reply information storage unit 139 stores a source IP address (“192 .168.100.20 ”to“ 192.168.100.27 ”), the MAC address of the network interface card (NIC1) mounted on the server 0 (for example,“ AA: B2: 10: AA: FF: A4 ") and the global IP address of the tenant server (for example," 120.18.20.105 "or" 23.100.51.12 ").

上述してきたテナントサーバ情報格納部136およびリプライ情報格納部139を利用することにより、実施例2に係るサーバ0の負荷分散処理部130は、上述の実施例1と同様の手順(図6参照)で、仮想ネットワーク単位で、テナントサーバへのアクセスを制御することができる。   By using the tenant server information storage unit 136 and the reply information storage unit 139 described above, the load distribution processing unit 130 of the server 0 according to the second embodiment performs the same procedure as in the first embodiment (see FIG. 6). Thus, access to the tenant server can be controlled in units of virtual networks.

以下、本発明にかかる負荷分散システム、負荷分散装置、負荷分散方法および負荷分散プログラムのその他の実施形態として実施例3を説明する。   Hereinafter, Example 3 will be described as another embodiment of the load distribution system, the load distribution device, the load distribution method, and the load distribution program according to the present invention.

(1)装置構成等
実施例1に係る負荷分散システムの構成、例えば、図1に示すサーバ0の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。
(1) Device Configuration, etc. The configuration of the load distribution system according to the first embodiment, for example, each component of the server 0 shown in FIG. 1 is functionally conceptual and is not necessarily physically configured as illustrated. Is not required.

例えば、図1に示すサーバ0の負荷分散処理部130とコントローラ120とを、機能的または物理的に統合した構成とし、負荷分散処理部130と同様の処理手順を実現するプログラムをコントローラ120に実行させるようにしてもよい。また、図2に示す負荷分散処理部130が有するMACアドレス格納部133、テナントサーバ情報格納部136およびリプライ情報格納部139を、負荷分散処理部130と機能的または物理的に分散させた構成としてもよい。このように、図1に示す負荷分散システムの各構成要素の分散または統合の具体的形態は、図1に示すものに限られず、各構成要素の全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。   For example, the load distribution processing unit 130 and the controller 120 of the server 0 shown in FIG. 1 are configured to be functionally or physically integrated, and a program that realizes the same processing procedure as the load distribution processing unit 130 is executed on the controller 120. You may make it make it. In addition, the MAC address storage unit 133, the tenant server information storage unit 136, and the reply information storage unit 139 included in the load distribution processing unit 130 illustrated in FIG. 2 are functionally or physically distributed with the load distribution processing unit 130. Also good. As described above, the specific form of distribution or integration of the components of the load distribution system shown in FIG. 1 is not limited to that shown in FIG. Depending on the above, it can be configured to be functionally or physically distributed and integrated in arbitrary units.

(2)負荷分散方法
実施例1に係る負荷分散システムにより、以下のような負荷分散方法が実現される。例えば、同一のローカルネットワーク内に収容され、複数のテナントに貸し出される複数の情報処理装置を有し、外部のネットワークを経由するクライアントからの前記情報処理装置に対するアクセスを制御する負荷分散装置を有する負荷分散システムで実行される負荷分散方法であって、前記負荷分散装置が、フローテーブルに従って前記ローカルネットワークと前記外部のネットワークとの間でやり取りされる情報を転送する転送部から、リクエストパケットの転送手順の問合せを受信した場合に、前記情報処理装置により前記外部のネットワークにおいて利用されるグローバルアドレスと、前記情報処理装置により前記ローカルネットワークにおいて利用されるプライベートアドレスおよび前記情報処理装置のMACアドレスの対と、前記ローカルネットワーク内に前記テナント単位で構築された仮想ネットワークのうち前記情報処理装置が属する仮想ネットワークを識別する仮想ネットワーク識別子とを対応付けて記憶するテナント情報記憶部から、前記リクエストパケットの宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子が同一である、前記プライベートアドレスおよび前記MACアドレスの対を全て取得し、取得した前記プライベートアドレスおよび前記MACアドレスの全ての対の中から、前記リクエストパケットの振り分け先を分散アルゴリズムにより決定する決定ステップと(例えば、図6のステップS109〜S112など参照)、前記負荷分散装置が、前記振り分け先に決定された前記プライベートアドレスおよび前記MACアドレスの対と、前記宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子とを、前記リクエストパケットを転送制御させるためのフロー情報として前記フローテーブルに設定するリクエスト転送設定ステップと(例えば、図6のステップS113〜S114など参照)、を含む負荷分散方法が実現される。
(2) Load distribution method The following load distribution method is realized by the load distribution system according to the first embodiment. For example, a load having a plurality of information processing devices housed in the same local network and lent to a plurality of tenants, and having a load distribution device that controls access to the information processing devices from clients via an external network A load distribution method executed in a distributed system, wherein the load distribution device transfers a request packet from a transfer unit that transfers information exchanged between the local network and the external network according to a flow table. A global address used in the external network by the information processing device, and a pair of a private address and a MAC address of the information processing device used in the local network by the information processing device. , A destination IP address of the request packet from a tenant information storage unit that stores a virtual network identifier that identifies a virtual network to which the information processing apparatus belongs among virtual networks constructed in units of tenants in the local network. All the private address and MAC address pairs having the same virtual network identifier associated with the same global address are obtained, and from among the obtained private address and MAC address pairs. A determination step of determining a distribution destination of the request packet by a distribution algorithm (see, for example, steps S109 to S112 in FIG. 6), and the load distribution apparatus determines that the private address determined as the distribution destination is And a request transfer that sets the MAC address pair and the virtual network identifier associated with the same global address as the destination IP address in the flow table as flow information for controlling transfer of the request packet. A load distribution method including a setting step (see, for example, steps S113 to S114 in FIG. 6) is realized.

(3)ログ解析装置に所定の手順を実行させるプログラム
また、上述の実施例で説明した各種の処理(例えば、図6など)は、実施例1に係るデータセンタ内で負荷分散装置として実装される、パーソナルコンピュータやワークステーションなどのコンピュータであるサーバ0に、上述の実施例で説明した各種の処理と同様の処理機能を実現するための手順(プロセス)を実行させるためのプログラムをインストールすることにより実現することもできる。
(3) Program for causing log analysis apparatus to execute a predetermined procedure The various processes described in the above-described embodiment (for example, FIG. 6 and the like) are implemented as a load distribution apparatus in the data center according to the first embodiment. A program for causing a server 0, which is a computer such as a personal computer or workstation, to execute procedures for realizing the same processing functions as the various types of processing described in the above-described embodiments. Can also be realized.

そこで、以下では、図10を用いて、上述の実施例で説明した各種の処理(例えば、図6など)と同様の機能を実現するコンピュータの一例を説明する。図10は、上述の実施例で説明した処理と同様の機能を実現させるためのプログラムを実行するコンピュータの一例を示す図である。   Therefore, in the following, an example of a computer that realizes the same functions as the various processes (for example, FIG. 6 and the like) described in the above-described embodiment will be described with reference to FIG. FIG. 10 is a diagram illustrating an example of a computer that executes a program for realizing the same function as the processing described in the above-described embodiment.

図10に示すように、サーバ0として実装されるコンピュータ300は、例えば、メモリ301と、CPU(Central Processing Unit)302を有する。また、コンピュータ300は、図10に示すように、ハードディスクドライブインタフェース303と、光ディスクドライブインタフェース304を有する。また、コンピュータ300は、図10に示すように、シリアルポートインタフェース305と、ビデオアダプタ306と、ネットワークインタフェース307を有する。そして、コンピュータ300は、これらの各部301〜307をバス308によって接続する。   As illustrated in FIG. 10, the computer 300 implemented as the server 0 includes, for example, a memory 301 and a CPU (Central Processing Unit) 302. Further, the computer 300 includes a hard disk drive interface 303 and an optical disk drive interface 304, as shown in FIG. Further, as shown in FIG. 10, the computer 300 includes a serial port interface 305, a video adapter 306, and a network interface 307. The computer 300 connects these units 301 to 307 via a bus 308.

メモリ301は、図10に示すように、ROM(Read Only Memory)及びRAM(Random Access Memory)を含む。ROMは、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース303は、図10に示すように、ハードディスクドライブ309に接続される。光ディスクドライブインタフェース304は、図10に示すように、光ディスクドライブ310に接続される。例えば、光ディスクドライブ310には、光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース305は、図10に示すように、例えば、マウス400およびキーボード500に接続される。ビデオアダプタ306は、図10に示すように、例えば、ディスプレイ600に接続される。   As shown in FIG. 10, the memory 301 includes a ROM (Read Only Memory) and a RAM (Random Access Memory). The ROM stores a boot program such as BIOS (Basic Input Output System). The hard disk drive interface 303 is connected to the hard disk drive 309 as shown in FIG. The optical disc drive interface 304 is connected to the optical disc drive 310 as shown in FIG. For example, a removable storage medium such as an optical disk is inserted into the optical disk drive 310. As shown in FIG. 10, the serial port interface 305 is connected to, for example, a mouse 400 and a keyboard 500. As shown in FIG. 10, the video adapter 306 is connected to a display 600, for example.

ここで、図10に示すように、ハードディスクドライブ309は、例えば、OS(Operating System)、アプリケーションプログラム、プログラムモジュール、プログラムデータを記憶する。   Here, as shown in FIG. 10, the hard disk drive 309 stores, for example, an OS (Operating System), application programs, program modules, and program data.

すなわち、上述したサーバ0により実行される処理と同様の機能を実現するための所定の手順をコンピュータに実行させるプログラムは、コンピュータ300によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ309に記憶される。つまり、上述の実施例で説明した各種の処理(例えば、図6など)と同様の処理機能をサーバ0としてのコンピュータ300に実現させるための手順が記述されたプログラムモジュールが、ハードディスクドライブ309に記憶される。このプログラムモジュールは、例えば、図1に示すサーバ0の負荷分散処理部130などにより実行される手順(プロセス)に対応する。   That is, a program for causing a computer to execute a predetermined procedure for realizing the same function as the processing executed by the server 0 described above is a program module in which a command executed by the computer 300 is described, for example, a hard disk drive 309. Is remembered. That is, a program module in which a procedure for causing the computer 300 as the server 0 to realize the same processing functions as the various processes (for example, FIG. 6) described in the above-described embodiment is stored in the hard disk drive 309. Is done. This program module corresponds to, for example, a procedure (process) executed by the load distribution processing unit 130 of the server 0 shown in FIG.

また、上述の実施例で説明した各種の処理(例えば、図6など)と同様の処理機能をサーバ0としてのコンピュータ300に実現させるための手順が記述されたプログラムモジュールにより用いられるデータは、プログラムデータとして、例えばハードディスクドライブ309に記憶される。例えば、このプログラムデータは、例えば、負荷分散処理部130が有するテナントサーバ情報格納部136に格納されているデータ(図4参照)、リプライ情報格納部139に格納されているデータ(図5参照)などの各種データに対応する。   The data used by the program module in which the procedure for causing the computer 300 as the server 0 to implement the same processing functions as the various processes (for example, FIG. 6 etc.) described in the above-described embodiment is a program. For example, it is stored in the hard disk drive 309 as data. For example, the program data includes, for example, data stored in the tenant server information storage unit 136 included in the load distribution processing unit 130 (see FIG. 4) and data stored in the reply information storage unit 139 (see FIG. 5). It corresponds to various data such as.

そして、CPU302が、ハードディスクドライブ309に記憶されたプログラムモジュールやプログラムデータを必要に応じてRAMに読み出し、上述の実施例で説明した各種の処理(例えば、図6など)を実現するための手順を実行する。   Then, the CPU 302 reads out program modules and program data stored in the hard disk drive 309 to the RAM as necessary, and performs a procedure for realizing various processes (for example, FIG. 6 and the like) described in the above embodiment. Run.

なお、上述の実施例で説明した各種の処理(例えば、図6など)と同様の処理をサーバ0としてのコンピュータ300に実現させるために、コンピュータ300に実行させる手順が記述されたプログラムモジュールやプログラムデータは、ハードディスクドライブ309に記憶される場合に限られるものではなく、例えば、着脱可能な記憶媒体である光ディスクドライブ310等に記憶されていてもよい。この場合には、CPU302が、光ディスクドライブ310を介して、サーバ0と同様の機能を有するプログラムモジュールやプログラムデータを読み出す。   It should be noted that a program module or a program in which a procedure to be executed by the computer 300 is described in order to cause the computer 300 as the server 0 to realize the same processing as the various processing described in the above-described embodiment (for example, FIG. 6 and the like). The data is not limited to being stored in the hard disk drive 309, and may be stored in, for example, the optical disk drive 310 that is a removable storage medium. In this case, the CPU 302 reads out program modules and program data having the same functions as the server 0 via the optical disk drive 310.

あるいは、上述の実施例で説明した各種の処理(例えば、図6など)と同様の処理機能をサーバ0としてのコンピュータ300に実現させるための手順が記述されたプログラムモジュールやプログラムデータは、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)など)を介して接続された他のコンピュータに記憶されていてもよい。この場合には、CPU302が、ネットワークインタフェース307を介して、サーバ0と同様の機能を有するプログラムモジュールやプログラムデータを他のコンピュータから読み出す。   Alternatively, a program module or program data describing a procedure for causing the computer 300 as the server 0 to implement the same processing functions as the various types of processing described in the above-described embodiment (for example, FIG. 6 and the like) is a network ( It may be stored in another computer connected via a LAN (Local Area Network), a WAN (Wide Area Network), or the like. In this case, the CPU 302 reads program modules and program data having the same functions as those of the server 0 from another computer via the network interface 307.

なお、プログラムによりCPU302が動作して各種処理を行う代わりに、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの電子回路を用いて処理を行うこともできる。また、メモリ301として、フラッシュメモリ(flash memory)などを用いることもできる。   Instead of the CPU 302 operating by a program to perform various processes, for example, the process can be performed using an electronic circuit such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA). Further, a flash memory or the like can be used as the memory 301.

0〜4 サーバ
110 オープンフロースイッチ
120 コントローラ
130 負荷分散処理部
131 パケット処理部
132 arp処理部
133 MACアドレス格納部
134 回答送信部
135 リクエストパケット処理部
136 テナントサーバ情報格納部
137 リクエストパケット振分け部
138 リプライパケット処理部
139 リプライ情報格納部
200 スイッチ
300 コンピュータ
301 メモリ
302 CPU
303 ハードディスクドライブインタフェース
304 光ディスクドライブインタフェース
305 シリアルポートインタフェース
306 ビデオアダプタ
307 ネットワークインタフェース
308 バス
309 ハードディスクドライブ
310 光ディスクドライブ
400 マウス
500 キーボード
600 ディスプレイ
0 to 4 server 110 open flow switch 120 controller 130 load distribution processing unit 131 packet processing unit 132 arp processing unit 133 MAC address storage unit 134 reply transmission unit 135 request packet processing unit 136 tenant server information storage unit 137 request packet distribution unit 138 reply Packet processing unit 139 Reply information storage unit 200 Switch 300 Computer 301 Memory 302 CPU
303 Hard Disk Drive Interface 304 Optical Disk Drive Interface 305 Serial Port Interface 306 Video Adapter 307 Network Interface 308 Bus 309 Hard Disk Drive 310 Optical Disk Drive 400 Mouse 500 Keyboard 600 Display

Claims (6)

同一のローカルネットワーク内に収容され、複数のテナントに貸し出される複数の情報処理装置と、外部のネットワークを経由するクライアントからの前記情報処理装置に対するアクセスを制御する負荷分散装置とを有する負荷分散システムであって、
前記負荷分散装置は、
前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットに挿入されたアドレス情報を変換するためのフローテーブルに従って、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットを転送する転送部と、
前記情報処理装置により前記外部のネットワークにおいて利用されるグローバルアドレスと、前記情報処理装置により前記ローカルネットワークにおいて利用されるプライベートアドレスおよび前記情報処理装置のMACアドレスの対と、前記ローカルネットワーク内に前記テナント単位で構築された仮想ネットワークのうち前記情報処理装置が属する仮想ネットワークを識別する仮想ネットワーク識別子とを対応付けて記憶するテナント情報記憶部と、
リクエストパケットの転送手順の問合せを前記転送部から受信した場合に、前記リクエストパケットの宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子が同一である、前記プライベートアドレスおよび前記MACアドレスの対を前記テナント情報記憶部から全て取得し、取得した前記プライベートアドレスおよび前記MACアドレスの全ての対の中から、前記リクエストパケットの振り分け先を分散アルゴリズムにより決定し、前記振り分け先に決定された前記プライベートアドレスおよび前記MACアドレスの対と、前記宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子とを、前記リクエストパケットを転送制御させるためのフロー情報として前記フローテーブルに設定するリクエスト転送設定部と
を有することを特徴とする負荷分散システム。
A load distribution system having a plurality of information processing apparatuses accommodated in the same local network and lent to a plurality of tenants, and a load distribution apparatus for controlling access to the information processing apparatus from a client via an external network There,
The load balancer is:
Transfer packets exchanged between the local network and the external network according to a flow table for converting address information inserted in the packets exchanged between the local network and the external network. A transfer section;
A global address used in the external network by the information processing device, a pair of a private address and a MAC address of the information processing device used in the local network by the information processing device, and the tenant in the local network A tenant information storage unit that stores a virtual network identifier that identifies a virtual network to which the information processing apparatus belongs among virtual networks constructed in units;
The private address and the MAC having the same virtual network identifier associated with the same global address as the destination IP address of the request packet when an inquiry about the transfer procedure of the request packet is received from the transfer unit All the address pairs are acquired from the tenant information storage unit, and from among the acquired pairs of the private address and the MAC address, the distribution destination of the request packet is determined by a distributed algorithm, and is determined as the distribution destination The private address and MAC address pair and the virtual network identifier associated with the same global address as the destination IP address are used as flow information for controlling the transfer of the request packet. Load distribution system characterized by having a request transfer setting unit for setting the flow table.
前記プライベートアドレスに対応付けて、前記負荷分散装置のMACアドレスおよび前記グローバルアドレスを記憶するリプライ情報記憶部と、
前記リクエストパケットに対するリプライパケットの転送手順の問合せを前記転送部から受信した場合に、前記リプライパケットの送信元IPアドレスと同一の前記プライベートアドレスに対応付けられた、前記グローバルアドレスおよび前記負荷分散装置のMACアドレスを前記リプライ情報記憶部から取得し、取得した前記グローバルアドレスおよび前記負荷分散装置のMACアドレスを、前記リプライパケットを転送制御させるためのフロー情報として前記フローテーブルに設定するリプライ転送設定部と
をさらに有することを特徴とする請求項1に記載の負荷分散システム。
A reply information storage unit that stores the MAC address of the load balancer and the global address in association with the private address;
When an inquiry about the transfer procedure of the reply packet for the request packet is received from the transfer unit, the global address and the load balancer associated with the same private address as the source IP address of the reply packet A reply transfer setting unit that acquires a MAC address from the reply information storage unit, and sets the acquired global address and the MAC address of the load balancer in the flow table as flow information for controlling transfer of the reply packet; The load distribution system according to claim 1, further comprising:
複数のテナントに貸し出される複数の情報処理装置と同一のローカルネットワーク内に収容され、外部のネットワークを経由するクライアントからの前記情報処理装置に対するアクセスを制御する負荷分散装置であって、
前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットに挿入されたアドレス情報を変換するためのフローテーブルに従って、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットを転送する転送部と、
前記情報処理装置により前記外部のネットワークにおいて利用されるグローバルアドレスと、前記情報処理装置により前記ローカルネットワークにおいて利用されるプライベートアドレスおよび前記情報処理装置のMACアドレスの対と、前記ローカルネットワーク内に前記テナント単位で構築された仮想ネットワークのうち前記情報処理装置が属する仮想ネットワークを識別する仮想ネットワーク識別子とを対応付けて記憶するテナント情報記憶部と、
リクエストパケットの転送手順の問合せを前記転送部から受信した場合に、前記リクエストパケットの宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子が同一である、前記プライベートアドレスおよび前記MACアドレスの対を前記テナント情報記憶部から全て取得し、取得した前記プライベートアドレスおよび前記MACアドレスの全ての対の中から、前記リクエストパケットの振り分け先を分散アルゴリズムにより決定し、前記振り分け先に決定された前記プライベートアドレスおよび前記MACアドレスの対と、前記宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子とを、前記リクエストパケットを転送制御させるためのフロー情報として前記フローテーブルに設定するリクエスト転送設定部と
を有することを特徴とする負荷分散装置。
A load balancer that is accommodated in the same local network as a plurality of information processing devices lent to a plurality of tenants and controls access to the information processing device from a client via an external network,
Transfer packets exchanged between the local network and the external network according to a flow table for converting address information inserted in the packets exchanged between the local network and the external network. A transfer section;
A global address used in the external network by the information processing device, a pair of a private address and a MAC address of the information processing device used in the local network by the information processing device, and the tenant in the local network A tenant information storage unit that stores a virtual network identifier that identifies a virtual network to which the information processing apparatus belongs among virtual networks constructed in units;
The private address and the MAC having the same virtual network identifier associated with the same global address as the destination IP address of the request packet when an inquiry about the transfer procedure of the request packet is received from the transfer unit All the address pairs are acquired from the tenant information storage unit, and from among the acquired pairs of the private address and the MAC address, the distribution destination of the request packet is determined by a distributed algorithm, and is determined as the distribution destination The private address and MAC address pair and the virtual network identifier associated with the same global address as the destination IP address are used as flow information for controlling the transfer of the request packet. Load distribution apparatus characterized by having a request transfer setting unit for setting the flow table.
同一のローカルネットワーク内に収容され、複数のテナントに貸し出される複数の情報処理装置と、外部のネットワークを経由するクライアントからの前記情報処理装置に対するアクセスを制御する負荷分散装置とを有する負荷分散システムで実行される負荷分散方法であって、
前記負荷分散装置が、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットに挿入されたアドレス情報を変換するためのフローテーブルに従って、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットを転送する転送部から、リクエストパケットの転送手順の問合せを受信した場合に、前記情報処理装置により前記外部のネットワークにおいて利用されるグローバルアドレスと、前記情報処理装置により前記ローカルネットワークにおいて利用されるプライベートアドレスおよび前記情報処理装置のMACアドレスの対と、前記ローカルネットワーク内に前記テナント単位で構築された仮想ネットワークのうち前記情報処理装置が属する仮想ネットワークを識別する仮想ネットワーク識別子とを対応付けて記憶するテナント情報記憶部から、前記リクエストパケットの宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子が同一である、前記プライベートアドレスおよび前記MACアドレスの対を全て取得し、取得した前記プライベートアドレスおよび前記MACアドレスの全ての対の中から、前記リクエストパケットの振り分け先を分散アルゴリズムにより決定する決定ステップと、
前記負荷分散装置が、前記振り分け先に決定された前記プライベートアドレスおよび前記MACアドレスの対と、前記宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子とを、前記リクエストパケットを転送制御させるためのフロー情報として前記フローテーブルに設定するリクエスト転送設定ステップと
を含むことを特徴とする負荷分散方法。
A load distribution system having a plurality of information processing apparatuses accommodated in the same local network and lent to a plurality of tenants, and a load distribution apparatus for controlling access to the information processing apparatus from a client via an external network A load balancing method to be executed,
The load balancer exchanges between the local network and the external network according to a flow table for converting address information inserted in a packet exchanged between the local network and the external network. A global address used in the external network by the information processing apparatus and a local network used by the information processing apparatus when an inquiry about a request packet transfer procedure is received from a transfer unit that forwards the received packet A virtual network identifying the virtual network to which the information processing apparatus belongs among the virtual networks constructed in units of tenants in the local network and the pair of the private address and the MAC address of the information processing apparatus From the tenant information storage unit that associates and stores a work identifier, the virtual network identifier associated with the same global address as the destination IP address of the request packet is the same, and the private address and the MAC address A determination step of acquiring all pairs and determining a distribution destination of the request packet by a distributed algorithm from all the pairs of the acquired private address and the MAC address;
The load balancer sends the request packet to the pair of the private address and the MAC address determined as the distribution destination, and the virtual network identifier associated with the same global address as the destination IP address. A request transfer setting step for setting in the flow table as flow information for transfer control.
複数のテナントに貸し出される複数の情報処理装置と同一のローカルネットワーク内に収容され、外部のネットワークを経由するクライアントからの前記情報処理装置に対するアクセスを制御する負荷分散装置が実行する負荷分散方法であって、
前記負荷分散装置が、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットに挿入されたアドレス情報を変換するためのフローテーブルに従って、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットを転送する転送部から、リクエストパケットの転送手順の問合せを受信した場合に、前記情報処理装置により前記外部のネットワークにおいて利用されるグローバルアドレスと、前記情報処理装置により前記ローカルネットワークにおいて利用されるプライベートアドレスおよび前記情報処理装置のMACアドレスの対と、前記ローカルネットワーク内に前記テナント単位で構築された仮想ネットワークのうち前記情報処理装置が属する仮想ネットワークを識別する仮想ネットワーク識別子とを対応付けて記憶するテナント情報記憶部から、前記リクエストパケットの宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子が同一である、前記プライベートアドレスおよび前記MACアドレスの対を全て取得し、取得した前記プライベートアドレスおよび前記MACアドレスの全ての対の中から、前記リクエストパケットの振り分け先を分散アルゴリズムにより決定する決定ステップと、
前記負荷分散装置が、前記振り分け先に決定された前記プライベートアドレスおよび前記MACアドレスの対と、前記宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子とを、前記リクエストパケットを転送制御させるためのフロー情報として前記フローテーブルに設定するリクエスト転送設定ステップと
を含むことを特徴とする負荷分散方法。
A load balancing method executed by a load balancer that controls access to an information processing device from a client that is accommodated in the same local network as a plurality of information processing devices lent to a plurality of tenants and that passes through an external network. And
The load balancer exchanges between the local network and the external network according to a flow table for converting address information inserted in a packet exchanged between the local network and the external network. A global address used in the external network by the information processing apparatus and a local network used by the information processing apparatus when an inquiry about a request packet transfer procedure is received from a transfer unit that forwards the received packet A virtual network identifying the virtual network to which the information processing apparatus belongs among the virtual networks constructed in units of tenants in the local network and the pair of the private address and the MAC address of the information processing apparatus From the tenant information storage unit that associates and stores a work identifier, the virtual network identifier associated with the same global address as the destination IP address of the request packet is the same, and the private address and the MAC address A determination step of acquiring all pairs and determining a distribution destination of the request packet by a distributed algorithm from all the pairs of the acquired private address and the MAC address;
The load balancer sends the request packet to the pair of the private address and the MAC address determined as the distribution destination, and the virtual network identifier associated with the same global address as the destination IP address. A request transfer setting step for setting in the flow table as flow information for transfer control.
複数のテナントに貸し出される複数の情報処理装置と同一のローカルネットワーク内に収容され、外部のネットワークを経由するクライアントからの前記情報処理装置に対するアクセスを制御する負荷分散装置に実行させるための負荷分散プログラムであって、
前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットに挿入されたアドレス情報を変換するためのフローテーブルに従って、前記ローカルネットワークと前記外部のネットワークとの間でやり取りされるパケットを転送する転送部から、リクエストパケットの転送手順の問合せを受信した場合に、前記情報処理装置により前記外部のネットワークにおいて利用されるグローバルアドレスと、前記情報処理装置により前記ローカルネットワークにおいて利用されるプライベートアドレスおよび前記情報処理装置のMACアドレスの対と、前記ローカルネットワーク内に前記テナント単位で構築された仮想ネットワークのうち前記情報処理装置が属する仮想ネットワークを識別する仮想ネットワーク識別子とを対応付けて記憶するテナント情報記憶部から、前記リクエストパケットの宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子が同一である、前記プライベートアドレスおよび前記MACアドレスの対を全て取得し、取得した前記プライベートアドレスおよび前記MACアドレスの全ての対の中から、前記リクエストパケットの振り分け先を分散アルゴリズムにより決定する決定手順と、
前記振り分け先に決定された前記プライベートアドレスおよび前記MACアドレスの対と、前記宛先IPアドレスと同一の前記グローバルアドレスに対応付けられた前記仮想ネットワーク識別子とを、前記リクエストパケットを転送制御させるためのフロー情報として前記フローテーブルに設定するリクエスト転送設定手順と
を実行させることを特徴とする負荷分散プログラム。
A load distribution program that is executed in a load distribution device that controls access to the information processing device from a client that is accommodated in the same local network as the plurality of information processing devices lent to a plurality of tenants Because
Transfer packets exchanged between the local network and the external network according to a flow table for converting address information inserted in the packets exchanged between the local network and the external network. A global address used in the external network by the information processing apparatus, a private address used in the local network by the information processing apparatus, and the A pair of the MAC address of the information processing device is paired with a virtual network identifier that identifies a virtual network to which the information processing device belongs among virtual networks constructed in units of tenants in the local network. All the private address and MAC address pairs having the same virtual network identifier associated with the same global address as the destination IP address of the request packet are acquired from the tenant information storage unit attached and stored. A determination procedure for determining a distribution destination of the request packet by a distributed algorithm from all the pairs of the acquired private address and the MAC address;
Flow for controlling transfer of the request packet with the pair of the private address and the MAC address determined as the distribution destination and the virtual network identifier associated with the same global address as the destination IP address And a request transfer setting procedure set in the flow table as information.
JP2011248597A 2011-11-14 2011-11-14 Load distribution system, load distribution device, load distribution method and load distribution program Pending JP2013105308A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011248597A JP2013105308A (en) 2011-11-14 2011-11-14 Load distribution system, load distribution device, load distribution method and load distribution program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011248597A JP2013105308A (en) 2011-11-14 2011-11-14 Load distribution system, load distribution device, load distribution method and load distribution program

Publications (1)

Publication Number Publication Date
JP2013105308A true JP2013105308A (en) 2013-05-30

Family

ID=48624803

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011248597A Pending JP2013105308A (en) 2011-11-14 2011-11-14 Load distribution system, load distribution device, load distribution method and load distribution program

Country Status (1)

Country Link
JP (1) JP2013105308A (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104219149A (en) * 2014-08-26 2014-12-17 杭州华三通信技术有限公司 Virtual connection based message transmission method and device
JP2015023320A (en) * 2013-07-16 2015-02-02 日本放送協会 Parallel distributed management device, program, and parallel distributed processing system
WO2016110897A1 (en) * 2015-01-09 2016-07-14 日本電気株式会社 Communication system, communication device, communication method and control program
JP2016530601A (en) * 2013-06-27 2016-09-29 華為技術有限公司Huawei Technologies Co.,Ltd. Flow control method and apparatus
CN106375176A (en) * 2016-08-29 2017-02-01 无锡华云数据技术服务有限公司 Method for accessing physical machine to cloud platform
US9577941B2 (en) 2012-02-02 2017-02-21 Nec Corporation Controller, method for distributing load, non-transitory computer-readable medium storing program, computer system, and control device
JP2018504038A (en) * 2015-12-31 2018-02-08 ホアウェイ・テクノロジーズ・カンパニー・リミテッド Software-defined data center, service cluster scheduling method and traffic monitoring method therefor
JP2018522471A (en) * 2015-12-31 2018-08-09 華為技術有限公司Huawei Technologies Co.,Ltd. Software-defined data center and service cluster placement method there
KR20180089757A (en) * 2017-02-01 2018-08-09 한국전자통신연구원 Apparatus and method for integrated collecting of network data
WO2019167802A1 (en) * 2018-03-02 2019-09-06 日本電信電話株式会社 Control device and control method
US10999365B2 (en) 2016-10-07 2021-05-04 Ricoh Company, Ltd. Network communication system, communication control apparatus, and recording medium

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9577941B2 (en) 2012-02-02 2017-02-21 Nec Corporation Controller, method for distributing load, non-transitory computer-readable medium storing program, computer system, and control device
JP2016530601A (en) * 2013-06-27 2016-09-29 華為技術有限公司Huawei Technologies Co.,Ltd. Flow control method and apparatus
US9923823B2 (en) 2013-06-27 2018-03-20 Huawei Technologies Co., Ltd. Flow control method and device
JP2015023320A (en) * 2013-07-16 2015-02-02 日本放送協会 Parallel distributed management device, program, and parallel distributed processing system
CN104219149A (en) * 2014-08-26 2014-12-17 杭州华三通信技术有限公司 Virtual connection based message transmission method and device
WO2016110897A1 (en) * 2015-01-09 2016-07-14 日本電気株式会社 Communication system, communication device, communication method and control program
US10601728B2 (en) 2015-12-31 2020-03-24 Huawei Technologies Co., Ltd. Software-defined data center and service cluster scheduling and traffic monitoring method therefor
JP2018504038A (en) * 2015-12-31 2018-02-08 ホアウェイ・テクノロジーズ・カンパニー・リミテッド Software-defined data center, service cluster scheduling method and traffic monitoring method therefor
JP2018522471A (en) * 2015-12-31 2018-08-09 華為技術有限公司Huawei Technologies Co.,Ltd. Software-defined data center and service cluster placement method there
US11237858B2 (en) 2015-12-31 2022-02-01 Huawei Technologies Co., Ltd. Software-defined data center, and deployment method for service cluster therein
CN106375176A (en) * 2016-08-29 2017-02-01 无锡华云数据技术服务有限公司 Method for accessing physical machine to cloud platform
CN106375176B (en) * 2016-08-29 2019-01-22 无锡华云数据技术服务有限公司 A kind of method of physical machine access cloud platform
US10999365B2 (en) 2016-10-07 2021-05-04 Ricoh Company, Ltd. Network communication system, communication control apparatus, and recording medium
KR102024530B1 (en) * 2017-02-01 2019-09-24 한국전자통신연구원 Apparatus and method for integrated collecting of network data
KR20180089757A (en) * 2017-02-01 2018-08-09 한국전자통신연구원 Apparatus and method for integrated collecting of network data
WO2019167802A1 (en) * 2018-03-02 2019-09-06 日本電信電話株式会社 Control device and control method
JP2019153019A (en) * 2018-03-02 2019-09-12 日本電信電話株式会社 Control device and control method
US11509573B2 (en) 2018-03-02 2022-11-22 Nippon Telegraph And Telephone Corporation Control device and control method

Similar Documents

Publication Publication Date Title
JP2013105308A (en) Load distribution system, load distribution device, load distribution method and load distribution program
US11831611B2 (en) Virtual private gateway for encrypted communication over dedicated physical link
US10601705B2 (en) Failover of centralized routers in public cloud logical networks
US10862753B2 (en) High availability for stateful services in public cloud logical networks
US11646941B2 (en) Multi-cluster configuration controller for software defined networks
US10411947B2 (en) Hot swapping and hot scaling containers
AU2015256010B2 (en) Migration of applications between an enterprise-based network and a multi-tenant network
EP3669504B1 (en) High availability for stateful services in public cloud logical networks
CN104364761B (en) For the system and method for the converting flow in cluster network
CN105577723B (en) Virtualize the method and apparatus that load balancing is realized in network
KR20180108708A (en) Message Generation Method and Load Balancer Based on Server Clusters
CN107005547A (en) For the system and method for the single-sign-on that the remote desktop session for client computer is performed by middle device
CN116803053A (en) Mechanism for providing customer VCN network encryption using customer managed keys in a network virtualization device
US11659058B2 (en) Provider network connectivity management for provider network substrate extensions
CN112889245B (en) Network system and architecture with multiple load balancers and network access controller
US10237235B1 (en) System for network address translation
US11777897B2 (en) Cloud infrastructure resources for connecting a service provider private network to a customer private network
US9935834B1 (en) Automated configuration of virtual port channels
US9166947B1 (en) Maintaining private connections during network interface reconfiguration
WO2015068255A1 (en) Network system, communication control device, and communication method
CN114026826B (en) Provider network connection management for provider network underlying extensions
US20230396579A1 (en) Cloud infrastructure resources for connecting a service provider private network to a customer private network
US20230291683A1 (en) Distributed tenant overlay network with centralized routing control plane
US11374789B2 (en) Provider network connectivity to provider network substrate extensions
US20220141080A1 (en) Availability-enhancing gateways for network traffic in virtualized computing environments