JP2012191554A - Server device, packet transmission system, packet transmission method, and program - Google Patents

Server device, packet transmission system, packet transmission method, and program Download PDF

Info

Publication number
JP2012191554A
JP2012191554A JP2011055247A JP2011055247A JP2012191554A JP 2012191554 A JP2012191554 A JP 2012191554A JP 2011055247 A JP2011055247 A JP 2011055247A JP 2011055247 A JP2011055247 A JP 2011055247A JP 2012191554 A JP2012191554 A JP 2012191554A
Authority
JP
Japan
Prior art keywords
packet
transmission
network
header
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011055247A
Other languages
Japanese (ja)
Other versions
JP5580766B2 (en
Inventor
Shinya Higuchi
晋也 樋口
Toshihiro Isobe
俊洋 磯部
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.)
NTT Data Group Corp
Original Assignee
NTT Data 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 NTT Data Corp filed Critical NTT Data Corp
Priority to JP2011055247A priority Critical patent/JP5580766B2/en
Publication of JP2012191554A publication Critical patent/JP2012191554A/en
Application granted granted Critical
Publication of JP5580766B2 publication Critical patent/JP5580766B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

PROBLEM TO BE SOLVED: To achieve high reliability even when an enormous number of server devices are arranged.SOLUTION: A plurality of server devices 100 respectively comprise: an NWC which performs network processing such as NW emulation processing; virtual SW; and a plurality of VMs, and establishes an overlay network among respective server devices 100. A transmission SW device 200 transmits received packets to a transmission destination node based on transmission rules, and a transmission NWC 300 generates the transmission rules to transmit them to the transmission SW device 200.

Description

本発明は、サーバ装置、パケット伝送システム、パケット伝送方法及びプログラムに関する。   The present invention relates to a server device, a packet transmission system, a packet transmission method, and a program.

インターネットサービスの利用形態として、クラウドコンピューティングがある。クラウドコンピューティングにおいて、システムの信頼性を向上するために、各サーバの負荷を分散する方法が検討されている。   There is cloud computing as a form of use of Internet services. In cloud computing, in order to improve the reliability of the system, a method of distributing the load of each server has been studied.

高い信頼性を実現するシステムとして、特許文献1は、負荷分散装置を二重化することで信頼性を高めるシステムを開示している。また、特許文献2は、クライアントから要求を受けると、次回以降は異なるサーバにアクセスするようにクライアントに指示を出すことで負荷の分散を実現するシステムを開示している。   As a system that realizes high reliability, Patent Document 1 discloses a system that improves reliability by duplicating a load distribution device. Patent Document 2 discloses a system that realizes load distribution by instructing a client to access a different server from the next time upon receiving a request from the client.

特許文献1と2が開示するシステムは、信頼性が高くなるものの、システムをスケールアウトする場合、システム構成が複雑となる問題点がある。   Although the systems disclosed in Patent Documents 1 and 2 have high reliability, there is a problem that the system configuration becomes complicated when the system is scaled out.

このような問題を解決するため、近年、OpenFlowと呼ばれる技術が提案されている(非特許文献1参照)。OpenFlow技術を採用したシステムは、一般的に、図14に示すような構成となる。   In order to solve such a problem, a technique called OpenFlow has been recently proposed (see Non-Patent Document 1). A system that employs the OpenFlow technology generally has a configuration as shown in FIG.

例えば、サーバ1300からサーバ1300へパケットを送信する場合、パケットは、スイッチ装置1200を介してサーバ1300へ到達する。このとき、スイッチ装置1200は、フローエントリと呼ばれる伝送ルールを参照して、パケットを転送する。なお、スイッチ装置1200は、複数配置されていても良く、この構成の場合、パケットは、複数のスイッチ装置1200を介してサーバ1300へ到達しても良い。 For example, when a packet is transmitted from the server 1300 1 to the server 1300 N , the packet reaches the server 1300 N via the switch device 1200. At this time, the switching device 1200 refers to a transmission rule called a flow entry and transfers the packet. The switch device 1200 may be more than one, in this configuration, the packet may be via a plurality of switch devices 1200 to reach the server 1300 N.

フローエントリとは、MACアドレス、IPアドレス、ポート番号等の情報をキーにしたテーブルであり、パケットの経路制御を行うためのものである。通常、ルータ等のパケットを転送する機器は、送信先IPアドレスを参照してパケットを転送するが、OpenFlowでは、上述のように、複数のパラメータをフローとして定義し、スイッチ装置1200はそのフロー単位でパケットの経路制御を行う。   The flow entry is a table using information such as a MAC address, an IP address, and a port number as a key, and is used for packet path control. Normally, a device such as a router that transfers a packet transfers a packet by referring to a destination IP address. In OpenFlow, as described above, a plurality of parameters are defined as a flow. To control the route of the packet.

スイッチ装置1200には、制御装置1100から送信された上述のフローエントリが記憶されている。フローエントリを参照してもパケットの転送先が不明である場合、またはロードバランサやファイアウォール等のネットワーク処理が必要な場合、スイッチ装置1200は、制御装置1100にパケットを転送し、その後の処理を一任する。すなわち、制御装置1100は、ロードバランサやファイアウォール等の処理を実行することが可能である。   The switch device 1200 stores the above-described flow entry transmitted from the control device 1100. When the transfer destination of the packet is unknown even after referring to the flow entry, or when network processing such as a load balancer or a firewall is necessary, the switch device 1200 transfers the packet to the control device 1100, and entrusts the subsequent processing. To do. That is, the control device 1100 can execute processing such as a load balancer and a firewall.

このように、OpenFlowを採用したシステムは、スイッチ装置1200がフロー単位でパケットの経路制御を行うため、システム内を分割する必要がない。よって、複数のシステムを同一基盤で動作させることが容易になり、さらに、ユーザが自由にネットワークを構成することができる。また、スイッチ装置1200を1台の制御装置1100で設定することができるため、スイッチ装置1200を自由に増設することができ、機器設定の手間を緩和することができる。   As described above, in the system that employs OpenFlow, the switch device 1200 performs packet path control in units of flows, and thus there is no need to divide the system. Therefore, it becomes easy to operate a plurality of systems on the same base, and the user can freely configure a network. In addition, since the switch device 1200 can be set by one control device 1100, the switch device 1200 can be freely added, and the time and effort for device setting can be reduced.

特開2006−235837号公報JP 2006-235837 A 特開2007−219964号公報JP 2007-219964 A

Nick McKeown, Tom Anderson, Hari Balakrishnan, Guru Parulkar, Larry Peterson, Jennifer Rexford, Scott Shenker, Jonathan Turner "OpenFlow: Enabling Innovation in Campus Networks"Nick McKeown, Tom Anderson, Hari Balakrishnan, Guru Parulkar, Larry Peterson, Jennifer Rexford, Scott Shenker, Jonathan Turner "OpenFlow: Enabling Innovation in Campus Networks"

図14に示すようなOpenFlow技術を採用したシステムは、大規模な数のサーバを配置した場合を考えると、いくつかの問題点が挙げられる。   A system that employs the OpenFlow technology as shown in FIG. 14 has several problems when a large number of servers are arranged.

まず、1台の制御装置1100がロードバランサやファイアウォール等のネットワーク処理を実行するため、このような処理の負荷は制御装置1100に集中することになる。このため、制御装置1100に障害が発生した際の影響が大きい。さらに、制御装置1100の上述の処理が間に合わない場合がある。   First, since one control device 1100 executes network processing such as a load balancer and a firewall, the load of such processing is concentrated on the control device 1100. For this reason, the influence when a failure occurs in the control device 1100 is great. Furthermore, the above-described processing of the control device 1100 may not be in time.

さらに、上述のような制御装置1100への転送が必要なパケットは、スイッチ装置1200からネットワークを介して制御装置1100に送信されるため、スイッチ装置1200と制御装置1100間の帯域が不足する可能性がある。   Further, since the packet that needs to be transferred to the control device 1100 as described above is transmitted from the switch device 1200 to the control device 1100 via the network, the bandwidth between the switch device 1200 and the control device 1100 may be insufficient. There is.

また、サーバの数の分だけFlood処理(ARP等のブロードキャスト処理時に用いられることが多いOpenFlow特有の処理)が増加し、帯域の不足や各装置の負荷が増大する、といった問題もある。さらに、サーバの数の分だけのフローエントリ数が必要となり、メモリ不足等の理由でスイッチ装置1200がフローエントリを記憶できない問題が発生する。   In addition, the number of servers increases the Flood processing (openflow-specific processing that is often used during broadcast processing such as ARP), resulting in a problem of insufficient bandwidth and increased load on each device. Furthermore, the number of flow entries corresponding to the number of servers is required, and there arises a problem that the switch device 1200 cannot store flow entries due to a memory shortage or the like.

本発明は、上記実情に鑑みてなされたものであり、大規模な数のサーバを配置した場合でも、高信頼性を実現することができるサーバ装置、パケット伝送システム、パケット伝送方法及びプログラムを提供することを目的とする。   The present invention has been made in view of the above circumstances, and provides a server device, a packet transmission system, a packet transmission method, and a program capable of realizing high reliability even when a large number of servers are arranged. The purpose is to do.

上記目的を達成するため、本発明の第1の観点に係るサーバ装置は、
ノードからパケットを受信し、前記受信パケットのヘッダに基づいたノードに前記受信パケットを転送する仮想スイッチ手段と、
前記仮想スイッチ手段から自己宛にパケットが転送されてきた場合に、前記パケットを受信し、前記受信パケットのヘッダに従って、前記受信パケットのヘッダを書き換える、また、ネットワークプロトコルに従った処理を実行するネットワーク制御手段と、
仮想的に構築されたネットワークの情報を記憶する記憶手段と、を備え、
前記ネットワーク制御手段は、
前記記憶手段に記憶されたネットワークの情報を基に、前記仮想的に構築されたネットワーク上で、前記受信パケットを模擬的に通過させるエミュレーション手段と、
前記受信パケットに自装置が属するシステム独自のヘッダが付与されている場合、前記独自のヘッダを削除し、前記受信パケットに前記独自のヘッダが付与されていない場合、前記独自のヘッダを付与するオーバーレイ処理手段と、
前記受信パケットがノードに対するアドレス要求パケットである場合に、前記記憶手段に記憶されたネットワークの情報を基に、前記アドレス要求パケットを送信したノードにアドレス応答パケットを返送するアドレス解決手段と、を備える、
ことを特徴とする。
In order to achieve the above object, a server device according to the first aspect of the present invention provides:
Virtual switch means for receiving a packet from a node and forwarding the received packet to a node based on a header of the received packet;
A network that receives the packet and rewrites the header of the received packet according to the header of the received packet when the packet is transferred from the virtual switch means to itself, and executes processing according to a network protocol Control means;
Storage means for storing information of the virtually constructed network,
The network control means includes
On the basis of the network information stored in the storage means, emulation means for passing the received packet in a simulated manner on the virtually constructed network;
An overlay that deletes the unique header when the header belonging to the system to which the device belongs is added to the received packet, and adds the unique header when the unique header is not assigned to the received packet Processing means;
Address resolution means for returning an address response packet to the node that sent the address request packet based on the network information stored in the storage means when the received packet is an address request packet for the node. ,
It is characterized by that.

また、前記エミュレーション手段は、前記記憶手段に記憶されたネットワークの情報を基に、前記受信パケットが仮想的に構築されたネットワーク上に配置されているノードを通過するか否かを判別し、通過すると判別した場合、該ネットワークノードに相当する処理を前記受信パケットに適用しても良い。   Further, the emulation means determines whether or not the received packet passes through a node arranged on the virtually constructed network based on the network information stored in the storage means. If it is determined, processing corresponding to the network node may be applied to the received packet.

また、前記オーバーレイ処理手段は、前記受信パケットに前記独自のヘッダを付与する場合、前記記憶手段に記憶されたネットワークの情報を基に、前記受信パケットに、送信先MAC(Media Access Control)アドレスが送信先ノードのMACアドレスであり、送信元MACアドレスが送信先ノードと隣接するノードを一意に識別する識別子を示すMACアドレスであるEthernet(登録商標)ヘッダを付与しても良い。   In addition, when the overlay processing unit adds the unique header to the received packet, based on the network information stored in the storage unit, the received packet has a destination MAC (Media Access Control) address. An Ethernet (registered trademark) header, which is a MAC address of a transmission destination node, and a MAC address indicating an identifier for uniquely identifying a node adjacent to the transmission destination node by the transmission source MAC address may be added.

また、前記アドレス解決手段は、前記アドレス要求パケットと前記記憶手段に記憶されたネットワークの情報を基に、アドレス要求先のノードを判別し、アドレス要求先のノードのMACアドレスを含めたアドレス応答パケットをアドレス要求元のノードに返送しても良い。   Further, the address resolution means determines an address request destination node based on the address request packet and the network information stored in the storage means, and an address response packet including the MAC address of the address request destination node. May be returned to the address requesting node.

また、前記オーバーレイ処理手段は、前記受信パケットに前記独自のヘッダを付与する場合、送信先及び送信元MACアドレスの値以外で、通信に影響を与えない部分以外は0としたTCP(Transmission Control Protocol)ヘッダ、IP(Internet Protocol)ヘッダ、Ethernet(登録商標)ヘッダを付与しても良い。   In addition, when the unique header is added to the received packet, the overlay processing means sets the TCP (Transmission Control Protocol) to 0 except for the values of the transmission destination and the transmission source MAC address except for the portion that does not affect the communication. ) Header, IP (Internet Protocol) header, and Ethernet (registered trademark) header.

また、任意のコンピュータの動作を模倣することで仮想的な機器の動作を実現する複数の仮想機器をさらに備え、
前記仮想機器は、パケットを送信する場合、送信先MACアドレスが前記仮想的に構築されたネットワーク上で隣接するノードのMACアドレスであるEthernet(登録商標)ヘッダを付与したパケットを送信しても良い。
In addition, it further comprises a plurality of virtual devices that realize the operation of a virtual device by imitating the operation of an arbitrary computer,
When the virtual device transmits a packet, the virtual device may transmit a packet with an Ethernet (registered trademark) header whose destination MAC address is the MAC address of an adjacent node on the virtually constructed network. .

また、前記記憶手段は、自サーバ装置が有する前記複数の仮想機器の情報をさらに記憶し、
前記ネットワーク制御手段は、前記記憶手段に記憶された前記ネットワークの情報を基に、前記受信パケットの送信元又は送信先ノードのホスト名を取得し、前記取得した送信先ノードのホスト名が前記記憶手段に記憶されたか否か判別し、前記送信先ノードのホスト名が記憶されていた場合、前記受信パケットが、自サーバ装置が有する前記仮想機器宛のパケットであると判別し、前記送信先ノードのホスト名が記憶されていない場合、前記受信パケットが、他の前記サーバ装置が有する前記仮想機器宛のパケットであると判別しても良い。
Further, the storage means further stores information on the plurality of virtual devices that the server device has,
The network control unit acquires a host name of a transmission source or transmission destination node of the received packet based on the network information stored in the storage unit, and the acquired host name of the transmission destination node is stored in the storage unit. If the host name of the destination node is stored, it is determined that the received packet is a packet addressed to the virtual device included in the server device, and the destination node If the host name is not stored, it may be determined that the received packet is a packet addressed to the virtual device of another server device.

上記目的を達成するため、本発明の第2の観点に係るパケット伝送システムは、
パケットを送受信する複数のサーバ装置と、パケットを転送する複数の伝送スイッチ装置と、前記複数の伝送スイッチ装置を制御する伝送ネットワーク制御装置と、を備えるパケット伝送システムであって、
前記サーバ装置と前記伝送スイッチ装置及び前記伝送ネットワーク制御装置は、それぞれネットワークを介して相互に接続され、
前記伝送ネットワーク制御装置は、
パケットのヘッダ情報と転送先ノードの情報とを関連付けた伝送ルールを生成する伝送ルール生成手段と、
前記伝送ルール生成手段に生成された伝送ルールを前記複数の伝送スイッチ装置に送信する伝送ルール送信手段と、を備え、
前記伝送スイッチ装置は、それぞれ、
前記伝送ネットワーク制御装置が送信した前記伝送ルールを受信し、受信した伝送ルールを記憶する伝送ルール記憶手段と、
ノードからパケットを受信し、前記伝送ルール記憶手段に記憶された前記伝送ルールと前記受信パケットのヘッダ情報とに基づいて転送先ノードを求め、求めた転送先ノードに前記受信パケットを転送するパケット転送手段と、を備え、
前記サーバ装置は、それぞれ、
ノードからパケットを受信し、前記受信パケットのヘッダに基づいたノードに前記受信パケットを転送する仮想スイッチ手段と、
前記仮想スイッチ手段から自己宛にパケットが転送されてきた場合に、前記パケットを受信し、前記受信パケットのヘッダに従って、前記受信パケットのヘッダを書き換える、また、ネットワークプロトコルに従った処理を実行するネットワーク制御手段と、を備える、
ことを特徴とする。
In order to achieve the above object, a packet transmission system according to the second aspect of the present invention provides:
A packet transmission system comprising a plurality of server devices that transmit and receive packets, a plurality of transmission switch devices that transfer packets, and a transmission network control device that controls the plurality of transmission switch devices,
The server device, the transmission switch device, and the transmission network control device are connected to each other via a network,
The transmission network control device comprises:
A transmission rule generating means for generating a transmission rule that associates the header information of the packet with the information of the transfer destination node;
Transmission rule transmission means for transmitting the transmission rule generated by the transmission rule generation means to the plurality of transmission switch devices, and
The transmission switch devices are respectively
A transmission rule storage means for receiving the transmission rule transmitted by the transmission network control device and storing the received transmission rule;
Packet transfer for receiving a packet from a node, obtaining a transfer destination node based on the transmission rule stored in the transmission rule storage means and header information of the received packet, and transferring the received packet to the obtained transfer destination node Means, and
The server devices are respectively
Virtual switch means for receiving a packet from a node and forwarding the received packet to a node based on a header of the received packet;
A network that receives the packet and rewrites the header of the received packet according to the header of the received packet when the packet is transferred from the virtual switch means to itself, and executes processing according to a network protocol Control means,
It is characterized by that.

また、前記サーバ装置は、それぞれ、
仮想的に構築されたネットワークの情報を記憶する記憶手段をさらに備え、
前記ネットワーク制御手段は、
前記記憶手段に記憶されたネットワークの情報を基に、前記仮想的に構築されたネットワーク上で、前記受信パケットを模擬的に通過させるエミュレーション手段と、
前記受信パケットに自装置が属するシステム独自のヘッダが付与されている場合、前記独自のヘッダを削除し、前記受信パケットに前記独自のヘッダが付与されていない場合、前記独自のヘッダを付与するオーバーレイ処理手段と、
前記受信パケットがノードに対するアドレス要求パケットである場合に、前記記憶手段に記憶されたネットワークの情報を基に、前記アドレス要求パケットを送信したノードにアドレス応答パケットを返送するアドレス解決手段と、を備えていても良い。
Each of the server devices is
A storage means for storing information on the virtually constructed network;
The network control means includes
On the basis of the network information stored in the storage means, emulation means for passing the received packet in a simulated manner on the virtually constructed network;
An overlay that deletes the unique header when the header belonging to the system to which the device belongs is added to the received packet, and adds the unique header when the unique header is not assigned to the received packet Processing means;
Address resolution means for returning an address response packet to the node that transmitted the address request packet based on the network information stored in the storage means when the received packet is an address request packet for the node; May be.

また、前記伝送ルール生成手段は、送信先又は送信元MACアドレスの情報と転送先のノードの情報とを関連付けた伝送ルールを生成し、
前記伝送ルール記憶手段は、前記伝送ルール生成手段が生成した前記伝送ルールを受信し、受信した前記伝送ルールを記憶し、
前記パケット転送手段は、ノードから受信したパケットの送信先又は送信元MACアドレスと前記伝送ルール記憶手段に記憶された伝送ルールとを基に転送先ノードを求め、求めた転送先ノードに前記受信パケットを転送しても良い。
Further, the transmission rule generation means generates a transmission rule that associates information of a transmission destination or a transmission source MAC address with information of a transfer destination node,
The transmission rule storage means receives the transmission rule generated by the transmission rule generation means, stores the received transmission rule,
The packet transfer means obtains a transfer destination node based on a transmission destination or a source MAC address of a packet received from a node and a transmission rule stored in the transmission rule storage means, and sends the received packet to the obtained transfer destination node. May be transferred.

また、前記パケット伝送システムは、任意のデータを記憶する記憶装置をさらに備え、
前記記憶装置は、前記サーバ装置と前記伝送スイッチ装置及び前記伝送ネットワーク制御装置とそれぞれネットワークを介して相互に接続され、
前記伝送ネットワーク制御装置は、ユーザが仮想的に構築したネットワークの情報を前記記憶装置に記憶する仮想ネットワーク記憶手段をさらに備え、
前記記憶手段は、前記記憶装置から前記仮想的に構築されたネットワークの情報を取得し、取得したネットワークの情報を記憶しても良い。
The packet transmission system further includes a storage device for storing arbitrary data,
The storage device is connected to the server device, the transmission switch device, and the transmission network control device via a network,
The transmission network control device further comprises virtual network storage means for storing information of a network virtually constructed by a user in the storage device,
The storage means may acquire information on the virtually constructed network from the storage device, and store the acquired network information.

また、前記仮想ネットワーク記憶手段は、前記ユーザが仮想的に構築したネットワークの情報を日時と共に前記記憶装置に記憶し、
前記記憶手段は、前記ネットワークの情報を日時と共に記憶し、前記記憶装置から前記ネットワークの情報を取得する場合、前記記憶装置に記憶された前記ネットワークの情報の更新日時と既に記憶している前記ネットワークの情報の更新日時とを比較し、既に記憶している前記ネットワークの情報の更新日時の方が古い場合、前記記憶装置から前記ネットワークの情報を取得し、取得したネットワークの情報を記憶しても良い。
Further, the virtual network storage means stores information on the network virtually constructed by the user in the storage device together with the date and time,
The storage means stores the network information together with the date and time, and when acquiring the network information from the storage device, the network information already stored and the update date and time of the network information stored in the storage device If the update date and time of the already stored network information is older, the network information is acquired from the storage device, and the acquired network information is stored. good.

また、前記アドレス解決手段は、前記記憶手段に記憶されたネットワークの情報を基に、アドレス要求先のノードを判別できない場合、前記記憶装置を参照し、最新の前記ネットワークの情報を取得し、再度アドレス要求先のノードを判別しても良い。   Further, when the address resolution unit cannot determine the address request destination node based on the network information stored in the storage unit, the address resolution unit refers to the storage device, acquires the latest network information, and again An address request destination node may be determined.

また、前記記憶装置は、分散データベースであっても良い。   The storage device may be a distributed database.

上記目的を達成するため、本発明の第3の観点に係るパケット伝送システムは、
パケットを送受信する複数のサーバ装置と、パケットを転送する複数の伝送スイッチ装置と、を備えるパケット伝送システムであって、
前記サーバ装置と前記伝送スイッチ装置はそれぞれネットワークを介して相互に接続され、
前記サーバ装置は、送信先MACアドレスが送信先ノードのMACアドレスであり、送信元MACアドレスが送信先ノードと隣接するノードを一意に識別する識別子を示すMACアドレスであるEthernet(登録商標)ヘッダを付与してパケットを送信し、
前記伝送スイッチ装置は、前記サーバ装置または他の前記伝送スイッチ装置からパケットを受信し、前記受信パケットのEthernet(登録商標)ヘッダの送信元及び送信先MACアドレスと、予め記憶しているパケットのヘッダ情報と転送先ノードの情報とを関連付けた伝送ルールと、を基に転送先ノードを求め、求めた転送先ノードに前記受信パケットを転送する、
ことを特徴とする。
In order to achieve the above object, a packet transmission system according to the third aspect of the present invention provides:
A packet transmission system comprising a plurality of server devices that transmit and receive packets and a plurality of transmission switch devices that transfer packets,
The server device and the transmission switch device are connected to each other via a network,
The server device includes an Ethernet (registered trademark) header in which a transmission destination MAC address is a MAC address of a transmission destination node, and a transmission source MAC address is a MAC address indicating an identifier for uniquely identifying a node adjacent to the transmission destination node. Grant and send the packet,
The transmission switch apparatus receives a packet from the server apparatus or another transmission switch apparatus, and transmits a source and destination MAC address of an Ethernet (registered trademark) header of the received packet, and a packet header stored in advance. Obtaining a forwarding destination node based on the transmission rule that associates the information and the forwarding destination node information, and forwarding the received packet to the obtained forwarding destination node;
It is characterized by that.

上記目的を達成するため、本発明の第4の観点に係るパケット伝送方法は、
パケットを送受信する複数のサーバ装置と、パケットを転送する複数の伝送スイッチ装置と、前記複数の伝送スイッチ装置を制御する伝送ネットワーク制御装置と、を備え、前記サーバ装置と前記伝送スイッチ装置及び前記伝送ネットワーク制御装置がそれぞれネットワークを介して相互に接続されているシステムでパケットを伝送する方法であって、
前記伝送ネットワーク制御装置がパケットのヘッダ情報と転送先ノードの情報とを関連付けた伝送ルールを生成する伝送ルール生成ステップと、
前記伝送ネットワーク制御装置が前記伝送ルール生成ステップで生成された伝送ルールを前記複数の伝送スイッチ装置に送信する伝送ルール送信ステップと、
前記伝送スイッチ装置が前記伝送ルール送信ステップで送信された前記伝送ルールを受信し、受信した伝送ルールを記憶する伝送ルール記憶ステップと、
前記伝送スイッチ装置がノードからパケットを受信し、前記伝送ルール記憶ステップで記憶された前記伝送ルールと前記受信パケットのヘッダ情報とに基づいて転送先ノードを求め、求めた転送先ノードに前記受信パケットを転送するパケット転送ステップと、
前記サーバ装置がノードからパケットを受信し、前記受信パケットのヘッダに基づいたノードに前記受信パケットを転送する仮想スイッチステップと、
前記サーバ装置が前記仮想スイッチステップで自己宛にパケットが転送された場合に、前記パケットを受信し、前記受信パケットのヘッダに従って、前記受信パケットのヘッダを書き換える、また、ネットワークプロトコルに従った処理を実行するネットワーク制御ステップと、を備える、
ことを特徴とする。
In order to achieve the above object, a packet transmission method according to a fourth aspect of the present invention includes:
A plurality of server apparatuses that transmit and receive packets; a plurality of transmission switch apparatuses that transfer packets; and a transmission network control apparatus that controls the plurality of transmission switch apparatuses, the server apparatus, the transmission switch apparatus, and the transmission A method of transmitting packets in a system in which network control devices are connected to each other via a network,
A transmission rule generating step for generating a transmission rule in which the transmission network control device associates the header information of the packet with the information of the transfer destination node;
A transmission rule transmission step in which the transmission network control device transmits the transmission rule generated in the transmission rule generation step to the plurality of transmission switch devices;
A transmission rule storage step in which the transmission switch device receives the transmission rule transmitted in the transmission rule transmission step and stores the received transmission rule;
The transmission switch device receives a packet from a node, obtains a transfer destination node based on the transmission rule stored in the transmission rule storage step and header information of the received packet, and sends the received packet to the obtained transfer destination node. A packet forwarding step for forwarding
A virtual switch step in which the server device receives a packet from a node and forwards the received packet to a node based on a header of the received packet;
When the server device transfers a packet addressed to itself in the virtual switch step, the server device receives the packet, rewrites the header of the received packet according to the header of the received packet, and performs processing according to a network protocol. A network control step to perform,
It is characterized by that.

上記目的を達成するため、本発明の第5の観点に係るプログラムは、
コンピュータを、
ノードからパケットを受信し、前記受信パケットのヘッダに基づいたノードに前記受信パケットを転送する仮想スイッチ手段、
前記仮想スイッチ手段から自己宛にパケットが転送されてきた場合に、前記パケットを受信し、前記受信パケットのヘッダに従って、前記受信パケットのヘッダを書き換える、また、ネットワークプロトコルに従った処理を実行するネットワーク制御手段、
仮想的に構築されたネットワークの情報を記憶する記憶手段、
前記記憶手段に記憶されたネットワークの情報を基に、前記仮想的に構築されたネットワーク上で、前記受信パケットを模擬的に通過させるエミュレーション手段、
前記受信パケットに自装置が属するシステム独自のヘッダが付与されている場合、前記独自のヘッダを削除し、前記受信パケットに前記独自のヘッダが付与されていない場合、前記独自のヘッダを付与するオーバーレイ処理手段、
前記受信パケットがノードに対するアドレス要求パケットである場合に、前記記憶手段に記憶されたネットワークの情報を基に、前記アドレス要求パケットを送信したノードにアドレス応答パケットを返送するアドレス解決手段、として機能させる、
ことを特徴とする。
In order to achieve the above object, a program according to the fifth aspect of the present invention provides:
Computer
Virtual switch means for receiving a packet from a node and transferring the received packet to a node based on a header of the received packet;
A network that receives the packet and rewrites the header of the received packet according to the header of the received packet when the packet is transferred from the virtual switch means to itself, and executes processing according to a network protocol Control means,
Storage means for storing information of a virtually constructed network;
Emulation means for simulating passing the received packet on the virtually constructed network based on the network information stored in the storage means;
An overlay that deletes the unique header when the header belonging to the system to which the device belongs is added to the received packet, and adds the unique header when the unique header is not assigned to the received packet Processing means,
When the received packet is an address request packet for a node, based on the network information stored in the storage means, function as address resolution means for returning an address response packet to the node that sent the address request packet ,
It is characterized by that.

本発明によれば、大規模な数のサーバを配置した場合でも、高信頼性を実現することができる。   According to the present invention, high reliability can be realized even when a large number of servers are arranged.

本発明の実施形態に係るパケット伝送システム構成の一例を示すブロック図である。It is a block diagram which shows an example of the packet transmission system structure which concerns on embodiment of this invention. 本発明の実施形態に係る各装置のハードウェア構成の一例を示すブロック図である。It is a block diagram which shows an example of the hardware constitutions of each apparatus which concerns on embodiment of this invention. 本発明の実施形態に係るパケット伝送システムの各装置の構成の一例を示すブロック図である。It is a block diagram which shows an example of a structure of each apparatus of the packet transmission system which concerns on embodiment of this invention. ハイパーバイザを説明するための図である。It is a figure for demonstrating a hypervisor. 論理マップを説明するための図である。It is a figure for demonstrating a logical map. 論理マップのテーブル構成を説明するための図である。It is a figure for demonstrating the table structure of a logical map. オーバーレイネットワークを説明するための図である。It is a figure for demonstrating an overlay network. 本実施形態に係るサーバ装置のパケット送信処理の一例を示すフロー図である。It is a flowchart which shows an example of the packet transmission process of the server apparatus which concerns on this embodiment. 本実施形態に係るサーバ装置のNWエミュレーション処理の一例を示すフロー図である。It is a flowchart which shows an example of the NW emulation process of the server apparatus which concerns on this embodiment. 本実施形態に係るサーバ装置のオーバーレイ処理の一例を示すフロー図である。It is a flowchart which shows an example of the overlay process of the server apparatus which concerns on this embodiment. 本実施形態に係るサーバ装置のアドレス解決処理の一例を示すフロー図である。It is a flowchart which shows an example of the address resolution process of the server apparatus which concerns on this embodiment. 本実施形態に係るサーバ装置のパケット受信処理の一例を示すフロー図である。It is a flowchart which shows an example of the packet reception process of the server apparatus which concerns on this embodiment. 本実施形態に係るパケット伝送システムのパケット経路を説明するための図である。It is a figure for demonstrating the packet path | route of the packet transmission system which concerns on this embodiment. 従来のOpenFlowシステムを説明するための図である。It is a figure for demonstrating the conventional OpenFlow system.

本発明の実施形態に係るパケット伝送システムについて、図面を参照して説明する。   A packet transmission system according to an embodiment of the present invention will be described with reference to the drawings.

パケット伝送システム1は、図1に示すように、サーバ装置100A、100B・・・、伝送スイッチ装置(以下、伝送SW装置とする)200・・・200、伝送ネットワークコントローラ(以下、伝送NWCとする)300、データベース(以下、DBとする)400、レイヤー2装置(以下、L2装置とする)500、マスター装置600、ゲートウェイ装置(以下、GW装置とする)700、アクセス回線網800、作業PC900、から構成されている。 As shown in FIG. 1, the packet transmission system 1 includes server devices 100A, 100B,..., Transmission switch devices (hereinafter referred to as transmission SW devices) 200 1 ... 200 N , transmission network controllers (hereinafter referred to as transmission NWCs). 300), database (hereinafter referred to as DB) 400, layer 2 device (hereinafter referred to as L2 device) 500, master device 600, gateway device (hereinafter referred to as GW device) 700, access line network 800, work PC900.

なお、サーバ装置100A、100B・・・はパケット伝送システム1内に複数台あっても良い。以下の説明でサーバ装置100と称する場合は、パケット伝送システム1内の全てのサーバ装置についての説明とする。また、伝送SW装置200・・・200も、パケット伝送システム1内に複数台あっても良い。以下の説明で伝送SW装置200と称する場合は、パケット伝送システム1内の全ての伝送SW装置についての説明とする。 Note that there may be a plurality of server apparatuses 100A, 100B,... In the packet transmission system 1. In the following description, the server device 100 will be described for all server devices in the packet transmission system 1. There may also be a plurality of transmission SW devices 200 1 ... 200 N in the packet transmission system 1. In the following description, the transmission SW device 200 will be described for all the transmission SW devices in the packet transmission system 1.

サーバ装置100は、伝送SW装置200、L2装置500、と接続し、複数の仮想機器(Virtual Machine、以下、VMとする)と、ネットワークコントローラ(Network Controller、以下、NWCとする)を有する。VMは、サーバ装置100上で稼動する仮想的なコンピュータ(ノード)であり、それぞれ任意のサービスを提供する。NWCは、受信したパケットに対して、後述するネットワークエミュレーション等の各種処理を実行する。   The server device 100 is connected to the transmission SW device 200 and the L2 device 500, and has a plurality of virtual devices (Virtual Machine, hereinafter referred to as VM) and a network controller (Network Controller, hereinafter referred to as NWC). The VM is a virtual computer (node) that runs on the server apparatus 100 and provides an arbitrary service. The NWC performs various processes such as network emulation described later on the received packet.

伝送SW装置200は、伝送SW装置200同士と接続し、また、サーバ装置100、L2装置500、GW装置700と接続する。伝送SW装置200は、記憶している伝送ルールを基に、パケットを転送する。なお、伝送ルールとは、パケットを転送するためのルールであり、パケットに付与されているヘッダのフィールドの値と転送先ノードの情報とを関連付けているものである。   The transmission SW device 200 is connected to the transmission SW devices 200, and is connected to the server device 100, the L2 device 500, and the GW device 700. The transmission SW device 200 transfers the packet based on the stored transmission rule. The transmission rule is a rule for transferring a packet, and associates the value of the header field attached to the packet with the information of the transfer destination node.

伝送NWC300は、L2装置500と接続し、L2装置500を介してサーバ装置100、伝送SW装置200と通信する。伝送NWC300は、どの伝送SW装置200にどのサーバ装置100が接続されているか、等のパケット伝送システム1のネットワーク構成を記憶している。   The transmission NWC 300 is connected to the L2 device 500 and communicates with the server device 100 and the transmission SW device 200 via the L2 device 500. The transmission NWC 300 stores the network configuration of the packet transmission system 1 such as which transmission device 200 is connected to which server device 100.

DB400は、L2装置500と接続し、各種のデータやテーブルを記憶している。パケット伝送システム1を構成する各装置は、DB400と通信することで各情報を取得する。DB400は、通常のデータベースで構築しても良いが、単一故障点の無い分散データベースを採用するとパケット伝送システム1を頑健にすることができる。   The DB 400 is connected to the L2 device 500 and stores various data and tables. Each device constituting the packet transmission system 1 acquires each information by communicating with the DB 400. The DB 400 may be constructed with a normal database, but if a distributed database without a single failure point is adopted, the packet transmission system 1 can be made robust.

なお、本実施形態では、DB400は装置として独立しているため、各装置はコマンドや命令等をDB400に送信し、DB400がそれに応答することで各種データの参照や書き込みをすることができる。以下の説明では、上述のようなコマンドや命令の送受信によって各装置がDB400からデータを参照、書き込みしていることとする。   In this embodiment, since the DB 400 is independent as a device, each device can send commands and commands to the DB 400, and the DB 400 can refer to and write various data by responding to the command. In the following description, it is assumed that each device refers to and writes data from the DB 400 by transmitting / receiving commands and instructions as described above.

L2装置500は、パケット伝送システム1内の各装置それぞれと接続しており、ある装置から送信されたデータを、送信先MAC(Media Access Control)アドレスを基に、送信先の装置に転送する。L2装置500は、例えば、一般的なL2スイッチであり、パケット伝送システム1内の装置数以上の十分なポート数を有している。L2装置500が十分なポート数を有していない場合、L2装置500は複数配置されても良い。   The L2 device 500 is connected to each device in the packet transmission system 1, and transfers data transmitted from a certain device to a destination device based on a destination MAC (Media Access Control) address. The L2 device 500 is, for example, a general L2 switch, and has a sufficient number of ports that is equal to or greater than the number of devices in the packet transmission system 1. When the L2 device 500 does not have a sufficient number of ports, a plurality of L2 devices 500 may be arranged.

マスター装置600は、L2装置500と接続し、DB400を参照して各装置を監視し、各装置が正常であるか、異常であるかを判別する。マスター装置600は、パケット伝送システム1の信頼性を高めるための装置であり、必ずしもパケット伝送システム1に配置する必要はない。   The master device 600 is connected to the L2 device 500, monitors each device with reference to the DB 400, and determines whether each device is normal or abnormal. The master device 600 is a device for improving the reliability of the packet transmission system 1 and is not necessarily arranged in the packet transmission system 1.

GW装置700は、伝送SW装置200、アクセス回線網800と接続し、アクセス回線網800からのデータを受信し、パケット伝送システム1内からのデータをアクセス回線網800に送信する。GW装置700は、複数台の伝送SW装置200と接続していても良い。   The GW apparatus 700 is connected to the transmission SW apparatus 200 and the access line network 800, receives data from the access line network 800, and transmits data from the packet transmission system 1 to the access line network 800. The GW device 700 may be connected to a plurality of transmission SW devices 200.

作業PC900は、L2装置500と接続し、システム管理者等が操作するPCである。作業PC900は、作業の際にL2装置500と接続されていれば良く、常にパケット伝送システム1に配置している必要はない。   The work PC 900 is a PC connected to the L2 device 500 and operated by a system administrator or the like. The work PC 900 only needs to be connected to the L2 device 500 at the time of work, and does not always need to be arranged in the packet transmission system 1.

なお、本実施形態では、パケット伝送システム1内に配置される各装置、サーバ装置100が有するVM等のそれぞれを「ノード」と称する。一般的にノードとは、ネットワークの節点を意味し、本実施形態でもこの定義に従う。   In the present embodiment, each of the devices arranged in the packet transmission system 1, the VMs included in the server device 100, and the like are referred to as “nodes”. In general, a node means a node of the network, and this definition also follows this definition.

以上が、パケット伝送システム1の構成である。   The above is the configuration of the packet transmission system 1.

続いて、パケット伝送システム1を構成する各装置のハードウェア構成について説明する。   Next, the hardware configuration of each device constituting the packet transmission system 1 will be described.

パケット伝送システム1を構成する各装置は、例えば、それぞれ図2に示すように、制御部11と、主記憶部12と、外部記憶部13と、操作部14と、表示部15と、送受信部16と、から構成されている。主記憶部12と、外部記憶部13と、操作部14と、表示部15と、送受信部16とは、いずれも内部バス10を介して制御部11と接続している。   As shown in FIG. 2, for example, each device constituting the packet transmission system 1 includes a control unit 11, a main storage unit 12, an external storage unit 13, an operation unit 14, a display unit 15, and a transmission / reception unit. 16. The main storage unit 12, the external storage unit 13, the operation unit 14, the display unit 15, and the transmission / reception unit 16 are all connected to the control unit 11 via the internal bus 10.

送受信部16は、ネットワークに接続する網終端装置または無線通信装置と、それに接続するシリアルインタフェースまたはLAN(Local Area Network)インタフェースから構成されている。送受信部16は、図1に示す各装置からネットワークを介して送信されたデータ等を受信する。また、送受信部16は、受信したデータ等を、制御部11に供給する。   The transmission / reception unit 16 includes a network termination device or a wireless communication device connected to a network and a serial interface or a LAN (Local Area Network) interface connected to the network termination device or wireless communication device. The transmission / reception unit 16 receives data transmitted from each device shown in FIG. 1 via the network. The transmission / reception unit 16 supplies the received data and the like to the control unit 11.

外部記憶部13は、フラッシュメモリ、ハードディスク、DVD−RAM(Digital Versatile Disc Random−Access Memory)、DVD−RW(Digital Versatile Disc ReWritable)等の不揮発性メモリから構成され、後述する各処理を制御部11に行わせるためのプログラム19を予め記憶し、また、制御部11の指示に従って、外部記憶部13が記憶するデータを制御部11に供給し、制御部11から供給されたデータを記憶する。   The external storage unit 13 includes a nonvolatile memory such as a flash memory, a hard disk, a DVD-RAM (Digital Versatile Disc Random Access Memory), and a DVD-RW (Digital Versatile Disc Rewriteable), and controls each process described below. The program 19 is stored in advance, and the data stored in the external storage unit 13 is supplied to the control unit 11 in accordance with an instruction from the control unit 11, and the data supplied from the control unit 11 is stored.

主記憶部12は、RAM(Random−Access Memory)等から構成され、外部記憶部13に記憶されているプログラム19を読み込み、さらに制御部11の作業領域としても使用される。   The main storage unit 12 includes a RAM (Random-Access Memory) and the like, reads the program 19 stored in the external storage unit 13, and is also used as a work area for the control unit 11.

制御部11は、CPU(Central Processing Unit)等から構成され、外部記憶部13に記憶されているプログラム19に従って、後述する各処理を実行する。   The control unit 11 includes a CPU (Central Processing Unit) and the like, and executes each process described later according to a program 19 stored in the external storage unit 13.

操作部14は、キーボードやマウス、操作キーやタッチパネルなどの入力デバイス等と、入力デバイス等を内部バス10に接続するインタフェース装置から構成されている。操作部14は、ユーザの指示を処理する機能を備え、ユーザの操作によって入力されたデータを制御部11に供給する。   The operation unit 14 includes an input device such as a keyboard, a mouse, an operation key, and a touch panel, and an interface device that connects the input device and the like to the internal bus 10. The operation unit 14 has a function of processing a user instruction, and supplies data input by the user operation to the control unit 11.

表示部15は、LCD(Liquid Crystal Display)または有機EL(Electro Luminescence)等から構成されている。表示部15は、各データや情報等を表示する。   The display unit 15 includes an LCD (Liquid Crystal Display) or an organic EL (Electro Luminescence). The display unit 15 displays each data and information.

パケット伝送システム1内の各装置は、必ずしも上述の構成要素を備えている必要は無い。上述のハードウェア構成は一般的な情報処理装置の一例であり、例えば、伝送SW装置200、L2装置500等は操作部14、表示部15を必ずしも備える必要は無い。   Each device in the packet transmission system 1 is not necessarily provided with the above-described components. The hardware configuration described above is an example of a general information processing device. For example, the transmission SW device 200, the L2 device 500, and the like do not necessarily include the operation unit 14 and the display unit 15.

以上が、パケット伝送システム1を構成する各装置のハードウェア構成である。   The above is the hardware configuration of each device constituting the packet transmission system 1.

続いて、サーバ装置100、伝送SW装置200、伝送NWC300の詳細な構成について説明する。   Next, detailed configurations of the server device 100, the transmission SW device 200, and the transmission NWC 300 will be described.

サーバ装置100は、図3に示すように、NWC110、仮想スイッチ(以下、仮想SWとする)120、VM130・・・130、記憶部140を備えている。なお、以下の説明でVM130と称する場合、サーバ装置100内の全てのVM130についての説明とする。 As illustrated in FIG. 3, the server apparatus 100 includes an NWC 110, a virtual switch (hereinafter referred to as a virtual SW) 120, VMs 130 1 to 130 N , and a storage unit 140. In the following description, when referring to the VM 130, it is assumed that all the VMs 130 in the server device 100 are described.

NWC110は、ネットワークエミュレーション(以下、NWエミュレーションとする)部111、オーバーレイ処理部112、アドレス解決部113、を備え、仮想SW120を介してVM130と接続している。NWC110は、パケットのヘッダを書き換え、また、ネットワークプロトコルに従った処理を実行する。   The NWC 110 includes a network emulation (hereinafter referred to as NW emulation) unit 111, an overlay processing unit 112, and an address resolution unit 113, and is connected to the VM 130 via the virtual SW 120. The NWC 110 rewrites the header of the packet and executes processing according to the network protocol.

NWエミュレーション部111は、後述する論理マップを基に、パケットのヘッダの書き換え、また、パケットの廃棄等の処理をする。NWエミュレーションとは、あたかもパケットが仮想的なネットワークを通過したかのようにパケットのヘッダを書き換える処理のことである。NWエミュレーション処理の詳細については後述する。   The NW emulation unit 111 performs processing such as rewriting a packet header and discarding the packet based on a logical map described later. NW emulation is a process of rewriting a packet header as if the packet passed through a virtual network. Details of the NW emulation processing will be described later.

オーバーレイ処理部112は、受信したパケットにパケット伝送システム1独自のヘッダを付与して送信、または受信したパケットの独自のヘッダを削除する。この処理によって、各サーバ装置100間はオーバーレイネットワークとなる。なお、本実施形態では、理解を容易にするため、上述のパケット伝送システム1独自のヘッダのことを「オーバーレイヘッダ」と称する。   The overlay processing unit 112 adds a header unique to the packet transmission system 1 to the received packet, and transmits or deletes the unique header of the received packet. By this processing, the server apparatuses 100 become an overlay network. In the present embodiment, the header unique to the packet transmission system 1 is referred to as an “overlay header” for easy understanding.

アドレス解決部113は、ARP(Address Resolution Protocol)の処理を実行する。ただし、通常のARP処理とは異なり、NWC110は論理マップを参照して、本来応答すべきノードの代わりに応答する。   The address resolution unit 113 executes an ARP (Address Resolution Protocol) process. However, unlike the normal ARP processing, the NWC 110 refers to the logical map and responds instead of the node that should respond.

仮想SW120は、仮想的なスイッチの動作を実現する。すなわち、仮想SW120は、送信されたパケットをヘッダに従ってNWC110又は後述するVM130にパケットを転送する。仮想SW120は、公知の方法で実現される。   The virtual SW 120 realizes a virtual switch operation. That is, the virtual SW 120 transfers the packet to the NWC 110 or the VM 130 described later according to the header. The virtual SW 120 is realized by a known method.

VM130は、仮想的な機器の動作を実現するものであり、他のコンピュータを模倣する。すなわち、VM130はソフトウェアであり、任意のコンピュータの動作を模倣するプログラムを実行する。各VM130には、ホスト名や、それぞれのVM130を一意の識別できるMACアドレス等が付与されている。このMACアドレスは、パケット伝送システム1内で重複しないものであり、伝送NWC300が発行する。   The VM 130 realizes the operation of a virtual device and imitates another computer. That is, the VM 130 is software, and executes a program that imitates the operation of an arbitrary computer. Each VM 130 is given a host name, a MAC address for uniquely identifying each VM 130, and the like. This MAC address is not duplicated in the packet transmission system 1 and is issued by the transmission NWC 300.

ところで、一つの装置内で仮想的に複数の機器の動作を実現する手法として、ハイパーバイザと呼ばれるものがある。ハイパーバイザとは、すなわち制御プログラムのことである。例えば、図4に示すように、まずハードウェアリソース上でハイパーバイザが起動し、ハイパーバイザの上位でホストOSやゲストOSが起動する。複数のゲストOSを起動させることで、仮想的な複数の機器(VM)の動作を実現することができる。なお、本実施形態に係るサーバ装置100ではハイパーバイザを採用するが、仮想的に複数の機器の動作を実現できればこれに限定されない。   By the way, there is a technique called a hypervisor as a technique for virtually realizing the operation of a plurality of devices in one apparatus. The hypervisor is a control program. For example, as shown in FIG. 4, the hypervisor is first activated on the hardware resource, and the host OS and guest OS are activated above the hypervisor. By starting a plurality of guest OSs, it is possible to realize the operation of a plurality of virtual devices (VMs). In addition, although the hypervisor is employ | adopted in the server apparatus 100 which concerns on this embodiment, if it can implement | achieve operation | movement of a some apparatus virtually, it will not be limited to this.

なお、NWC110、仮想SW120及びVM130は、プログラム19により提供され、制御部11及び主記憶部12が協働して動作することで実現される機能部である。   The NWC 110, the virtual SW 120, and the VM 130 are functional units that are provided by the program 19 and are realized by the control unit 11 and the main storage unit 12 operating in cooperation.

図3に戻り、記憶部140は、DB400から取得したデータを記憶する。記憶部140は、自装置が属している論理マップと、自装置のVM130の情報(属する論理マップの情報、ホスト名、割り当てるリソース等)、自装置に関する情報等を記憶している。   Returning to FIG. 3, the storage unit 140 stores data acquired from the DB 400. The storage unit 140 stores a logical map to which the own device belongs, information of the VM 130 of the own device (information of the logical map to which the own device belongs, host name, resources to be assigned, etc.), information about the own device, and the like.

自装置に関する情報とは、自装置のMACアドレスや、隣接する伝送SW装置200の識別子等の情報である。本実施形態では、伝送SW装置200に、物理的なMACアドレスの他に、パケット伝送システム1内で伝送SW装置200を一意に識別する識別子を付与する。この識別子は、伝送NWC300がMACアドレス形式で発行する。本実施形態では、物理的なMACアドレスと区別するため、上述の識別子を「識別MACアドレス」と称する。なお、サーバ装置100においても、上述のように識別子を付与しても良い。   The information related to the own device is information such as the MAC address of the own device and the identifier of the adjacent transmission SW device 200. In this embodiment, an identifier for uniquely identifying the transmission SW device 200 in the packet transmission system 1 is given to the transmission SW device 200 in addition to the physical MAC address. This identifier is issued by the transmission NWC 300 in the MAC address format. In the present embodiment, the above-described identifier is referred to as an “identification MAC address” in order to distinguish it from a physical MAC address. Note that the server apparatus 100 may also assign an identifier as described above.

伝送SW装置200は、伝送ルール記憶部210と、パケット転送部220と、を備えている。   The transmission SW device 200 includes a transmission rule storage unit 210 and a packet transfer unit 220.

伝送ルール記憶部210は、伝送NWC300から送信された伝送ルールを記憶するものであり、データベースの形態でも良い。   The transmission rule storage unit 210 stores transmission rules transmitted from the transmission NWC 300, and may be in the form of a database.

パケット転送部220は、伝送ルール記憶部210に記憶された伝送ルールとパケットのヘッダ情報を基に転送先ノードを求め、求めた転送先ノードにパケットを転送する。   The packet transfer unit 220 obtains a transfer destination node based on the transmission rule and the packet header information stored in the transmission rule storage unit 210, and transfers the packet to the obtained transfer destination node.

なお、伝送ルール記憶部210、パケット転送部220は、プログラム19により提供され、制御部11及び主記憶部12が協働して動作することで実現される機能部である。   The transmission rule storage unit 210 and the packet transfer unit 220 are functional units that are provided by the program 19 and are realized by the control unit 11 and the main storage unit 12 operating in cooperation.

伝送NWC300は、データ生成部310と、データ送信部320と、を備えている。   The transmission NWC 300 includes a data generation unit 310 and a data transmission unit 320.

データ生成部310は、伝送ルール等の各種データを生成し、データ送信部320は、生成した各種データを伝送SW装置200やDB400に送信する。なお、データ生成部310は、自動的に各種データを生成しても良く、ユーザの指示に従って各種データを生成しても良い。   The data generation unit 310 generates various data such as transmission rules, and the data transmission unit 320 transmits the generated various data to the transmission SW device 200 and the DB 400. Note that the data generation unit 310 may automatically generate various data, or may generate various data in accordance with a user instruction.

なお、データ生成部310及びデータ送信部320は、プログラム19により提供され、制御部11及び主記憶部12が協働して動作することで実現される機能部である。   Note that the data generation unit 310 and the data transmission unit 320 are functional units provided by the program 19 and realized by the control unit 11 and the main storage unit 12 operating in cooperation.

また、伝送NWC300はサーバ装置100内のNWC110と同等の機能も有している。本実施形態に係るパケット伝送システム1では、伝送NWC300のパケットに係る処理の負荷を分散するため、各サーバ装置100にNWC110を配置している。   The transmission NWC 300 also has a function equivalent to that of the NWC 110 in the server apparatus 100. In the packet transmission system 1 according to the present embodiment, the NWC 110 is arranged in each server device 100 in order to distribute the processing load related to the packet of the transmission NWC 300.

以上が、サーバ装置100、伝送SW装置200、伝送NWC300の詳細な構成である。   The detailed configuration of the server device 100, the transmission SW device 200, and the transmission NWC 300 has been described above.

続いて、論理マップについて説明する。   Next, the logical map will be described.

本実施形態に係るパケット伝送システム1では、論理マップという概念を採用する。論理マップとは、図5に示すような、仮想的に構築したネットワークのことであり、作業者は、作業PC900を使用して論理マップを作成し、DB400は作成した論理マップをテーブル情報として記憶する。   The packet transmission system 1 according to the present embodiment employs the concept of a logical map. The logical map is a virtually constructed network as shown in FIG. 5, and an operator creates a logical map using the work PC 900, and the DB 400 stores the created logical map as table information. To do.

例えば、作業者が図5に示すような論理マップを作成した場合、Region1は、アクセス回線網からHost1、2までの経路に、複数のL2SW(L2スイッチ)と、FW(Fire Wall)と、L3(ルータ等)と、が配置されているネットワーク構成を表している。また、スーパノードは、DHCP(Dynamic Host Configuration Protocol)、DNS(Domain Name System)、NTP(Network Time Protocol)等の機能を有するノードを意味している。   For example, when the operator creates a logical map as shown in FIG. 5, the Region 1 has a plurality of L2SWs (L2 switches), FWs (Fire Walls), and L3s on the route from the access network to the Hosts 1 and 2. (Router or the like) is shown. The super node means a node having functions such as DHCP (Dynamic Host Configuration Protocol), DNS (Domain Name System), and NTP (Network Time Protocol).

同様に、Region2は、アクセス回線網からHost3、4までの経路に、複数のL2SWと、FWと、LB(ロードバランサ、負荷分散装置)と、が配置されているネットワーク構成を表している。   Similarly, Region 2 represents a network configuration in which a plurality of L2SWs, FWs, and LBs (load balancers, load balancers) are arranged on the route from the access line network to Hosts 3 and 4.

作業者は、作業PC900を用いて、例えばGUI(Graphical User Interface)を使用してこのような論理マップを作成するが、GUIに限られず、ファイルに記述する等して論理マップを作成しても良い。また、作業者は、複数のシステム領域を一つの論理マップとして作成して一度にDB400に記憶させても良く、複数の論理マップを随時作成してDB400に記憶させても良い。   The worker uses the work PC 900 to create such a logical map using, for example, a GUI (Graphical User Interface). However, the worker is not limited to the GUI, and can create a logical map by describing it in a file. good. In addition, the operator may create a plurality of system areas as one logical map and store it in the DB 400 at once, or may create a plurality of logical maps and store them in the DB 400 as needed.

このようにして作成された論理マップは、例えば、図6に示すようにテーブル化されてDB400に記憶される。なお、テーブルの形式はこれに限られず、論理マップの構成が維持できる形式であれば任意である。   The logical map created in this way is tabulated as shown in FIG. 6 and stored in the DB 400, for example. The table format is not limited to this, and any format can be used as long as the configuration of the logical map can be maintained.

論理マップは、NWエミュレーションを実行する際に使用される。すなわち、サーバ装置100のNWエミュレーション部111が、論理マップを基にNWエミュレーションを実行する。例えば、図5に示すRegion1を基にNWエミュレーションを実行した場合、パケットは、あたかもFWやルータを通過したようにHost1又はHost2に送信される。なお、Host1、2は、サーバ装置100のVM130のことである。   The logical map is used when executing NW emulation. That is, the NW emulation unit 111 of the server apparatus 100 executes NW emulation based on the logical map. For example, when NW emulation is executed based on Region 1 shown in FIG. 5, the packet is transmitted to Host 1 or Host 2 as if it passed through FW or a router. Hosts 1 and 2 are the VMs 130 of the server apparatus 100.

ここで、図5のRegion1に示すHost2がサーバ装置100AのVM130Aを示しているとする。サーバ装置100Aがアクセス回線網からパケットを受信した場合、また、VM130Aがアクセス回線網にパケットを送信する場合、サーバ装置100AのNWエミュレーション部111によって、パケットは、仮想的に「アクセス回線網〜L2SW1〜FW1〜L2SW2〜L3〜L2SW3〜Host2」、という経路を通過することとなる。   Here, it is assumed that Host2 shown in Region 1 of FIG. 5 indicates the VM 130A of the server device 100A. When the server apparatus 100A receives a packet from the access line network, or when the VM 130A transmits a packet to the access line network, the NW emulation unit 111 of the server apparatus 100A virtually transmits the packet “access line network to L2SW1. Through FW1-L2SW2-L3-L2SW3-Host2 ".

DB400は、論理マップと共に、その論理マップが更新された日時を記憶する。各サーバ装置100のNWC110は、定期的にDB400に記憶されている論理マップの更新日時を参照し、自装置に関する論理マップが更新されている場合、更新された論理マップを記憶部140に記憶する。   The DB 400 stores the date and time when the logical map was updated together with the logical map. The NWC 110 of each server device 100 periodically refers to the update date and time of the logical map stored in the DB 400, and stores the updated logical map in the storage unit 140 when the logical map related to the own device is updated. .

各サーバ装置100は、自装置に関する論理マップのみを記憶していれば良く、全ての論理マップについて記憶している必要は無い。すなわち、Host1が属するサーバ装置100は、Region1に関する論理マップのみを記憶していればよく、Host3が属するサーバ装置100は、Region2に関する論理マップを記憶していれば良い。なお、各サーバ装置100は、複数の論理マップを記憶することも可能である。   Each server device 100 only needs to store a logical map related to its own device, and does not need to store all logical maps. That is, the server apparatus 100 to which Host1 belongs only needs to store a logical map related to Region1, and the server apparatus 100 to which Host3 belongs only needs to store a logical map related to Region2. Each server device 100 can also store a plurality of logical maps.

以上が、パケット伝送システム1の論理マップについての説明である。   This completes the description of the logical map of the packet transmission system 1.

続いて、サーバ装置100間のオーバーレイネットワークについて説明する。   Next, an overlay network between server devices 100 will be described.

本実施形態に係るパケット伝送システム1では、サーバ装置100間の通信を容易にするため、図7に示すように、各サーバ装置100間にオーバーレイネットワークを構築している。   In the packet transmission system 1 according to this embodiment, in order to facilitate communication between the server apparatuses 100, an overlay network is constructed between the server apparatuses 100 as shown in FIG.

この場合、例えば、サーバ装置100A内のVM130Aが、サーバ装置100B内のVM130BにパケットAを送信すると、まずNWC110AがパケットAを受信する。このとき、VM130Aは、送信パケットAの送信元MACアドレスをVM130AのMACアドレス、送信先MACアドレスを論理マップ上に存在するVM130Aと隣接するノードのMACアドレス、として送信する。   In this case, for example, when the VM 130A in the server apparatus 100A transmits the packet A to the VM 130B in the server apparatus 100B, the NWC 110A first receives the packet A. At this time, the VM 130A transmits the source MAC address of the transmission packet A as the MAC address of the VM 130A and the destination MAC address of the node adjacent to the VM 130A existing on the logical map.

NWC110AがパケットAを受信すると、NWエミュレーション部111がNWエミュレーション処理を実行した後、オーバーレイ処理部112Aは、パケットAにオーバーレイヘッダを付与し、パケットBを生成する。本実施形態では、オーバーレイヘッダの構成は、TCP(Transmission Control Protocol)ヘッダ、IP(Internet Protocol)ヘッダ、Ethernet(登録商標)ヘッダからなるが、これに限られず、パケット伝送システム1内で整合性が取れれば任意である。   When the NWC 110A receives the packet A, the NW emulation unit 111 executes the NW emulation process, and then the overlay processing unit 112A adds an overlay header to the packet A and generates a packet B. In this embodiment, the configuration of the overlay header includes a TCP (Transmission Control Protocol) header, an IP (Internet Protocol) header, and an Ethernet (registered trademark) header, but is not limited to this, and consistency in the packet transmission system 1 is ensured. It is optional if it can be taken.

オーバーレイヘッダの各パラメータは、各サーバ装置100間で整合性が取れていれば任意である。本実施形態に係るオーバーレイ処理部112は、TCPヘッダの送信先・送信元ポート、IPヘッダの送信先・送信元アドレスを一律で0とし、Ethernet(登録商標)ヘッダの送信元MACアドレスを最後に通過する伝送SW装置200(図7の場合、伝送SW装置200)の識別MACアドレス、送信先MACアドレスを送信先のサーバ装置100BのMACアドレスとする。なお、オーバーレイ処理部112は、記憶部140やDB400等を参照することで、ネットワーク上で隣接していない装置の送信先・送信元のMACアドレスを認識することができる。送信先サーバ装置100のMACアドレスは、物理的なMACアドレスでも良く、上述の識別MACアドレスでも良い。 Each parameter of the overlay header is arbitrary as long as consistency is obtained between the server apparatuses 100. The overlay processing unit 112 according to the present embodiment uniformly sets the transmission destination and transmission source port of the TCP header and the transmission destination and transmission source address of the IP header to 0, and finally sets the transmission source MAC address of the Ethernet (registered trademark) header. The identification MAC address and transmission destination MAC address of the transmission SW device 200 that passes through (transmission SW device 200 B in the case of FIG. 7) are set as the MAC address of the transmission destination server device 100B. The overlay processing unit 112 can recognize the MAC address of the transmission destination / transmission source of a device that is not adjacent on the network by referring to the storage unit 140, the DB 400, or the like. The MAC address of the destination server device 100 may be a physical MAC address or the identification MAC address described above.

なお、MACアドレス以外の各パラメータの情報は、記憶部140が記憶していても良く、ハードコーディングしても良い。   Information on each parameter other than the MAC address may be stored in the storage unit 140 or may be hard-coded.

オーバーレイ処理部112AがパケットBを送信すると、各伝送SW装置200は、オーバーレイヘッダの情報、及び伝送ルールを基に、パケットBを転送する。このとき、伝送SW装置200は、送信先IPアドレスや送信先ポートは参照せず、パケットBの送信先、送信元MACアドレスを基に、パケットBを転送する。   When the overlay processing unit 112A transmits the packet B, each transmission SW device 200 transfers the packet B based on the overlay header information and the transmission rule. At this time, the transmission SW device 200 transfers the packet B based on the transmission destination and the transmission source MAC address of the packet B without referring to the transmission destination IP address and the transmission destination port.

サーバ装置100BがパケットBを受信すると、オーバーレイ処理部112Bは、付与されたオーバーレイヘッダを削除し、元の送信パケットAを取得する。   When the server apparatus 100B receives the packet B, the overlay processing unit 112B deletes the assigned overlay header and acquires the original transmission packet A.

そして、オーバーレイ処理部112Bが取得した送信パケットAをVM130Bに出力することで、サーバ装置100A、100B間の通信が可能となる。   Then, the transmission packet A acquired by the overlay processing unit 112B is output to the VM 130B, thereby enabling communication between the server apparatuses 100A and 100B.

ところで、上述で説明した通り、伝送SW装置200は、伝送NWC300から設定された伝送ルールに従ってパケットを転送する。本来、伝送ルールは、各サーバ装置100が有するVM130の数の分だけ、伝送SW装置200に適用しておく必要がある。このため、サーバ装置100やVM130の増加に従って、伝送ルールの数も増えてしまう。   By the way, as described above, the transmission SW device 200 transfers a packet according to the transmission rule set from the transmission NWC 300. Essentially, the transmission rules need to be applied to the transmission SW device 200 by the number of VMs 130 that each server device 100 has. For this reason, the number of transmission rules also increases as the number of server devices 100 and VMs 130 increases.

例えば、各サーバ装置100が有するVM130がN個ある場合、N個が相互に通信可能となるエントリが必要となるため、伝送ルール数は、最低でもN×Nのエントリ数が必要となる。仮に1万個のVM130をパケット伝送システム1内に配置した場合、各伝送SW装置200が保持する伝送ルール数は最低でも1億となり、メモリの制限や、公知のルール検索方法(線形検索やハッシュ検索)を考慮すると、非現実的な値となる。   For example, when there are N VMs 130 included in each server apparatus 100, N entries need to be able to communicate with each other. Therefore, the number of transmission rules is at least N × N. If 10,000 VMs 130 are arranged in the packet transmission system 1, the number of transmission rules held by each transmission SW device 200 will be at least 100 million, and there will be a memory limitation and a known rule search method (linear search or hash (Retrieval) is an unrealistic value.

また、通常、伝送ルールは、送信先IPアドレスや、送信先ポート番号等、様々な条件(12tuple)を組み合わせて作成するものであるため、伝送ルール数はN×N以上の数になるのが一般的である。しかしながら本実施形態では、サーバ装置100間にオーバーレイネットワークを構築しているため、IPアドレスやポート番号を参照する必要は無く、サーバ装置100間の通信の場合はMACアドレスのみ参照すれば良い。つまり、ほとんどの場合、各サーバ装置100のMACアドレスを組み合わせて伝送ルールを作成すれば正常にパケットを転送することができる。すなわち、サーバ装置100間にオーバーレイネットワークを構築することで、伝送ルールの数は大幅に減少することとなる。   In general, the transmission rule is created by combining various conditions (12 tuples) such as a destination IP address and a destination port number, so the number of transmission rules is N × N or more. It is common. However, in this embodiment, since an overlay network is constructed between the server apparatuses 100, it is not necessary to refer to the IP address or port number, and in the case of communication between the server apparatuses 100, only the MAC address need be referred to. That is, in most cases, if a transmission rule is created by combining the MAC addresses of the server apparatuses 100, packets can be transferred normally. That is, by constructing an overlay network between the server devices 100, the number of transmission rules is greatly reduced.

以上が、サーバ装置100間のオーバーレイネットワークについての説明である。   This completes the description of the overlay network between the server apparatuses 100.

続いて、サーバ装置100がパケットを送信する際の動作の一例について、図面を参照して説明する。以下の説明では、サーバ装置100のVM130が、他ノードにパケットを送信する際の動作について説明する。   Next, an example of an operation when the server apparatus 100 transmits a packet will be described with reference to the drawings. In the following description, an operation when the VM 130 of the server apparatus 100 transmits a packet to another node will be described.

まず、図8に示すように、サーバ装置100のVM130がパケットを送信すると(S101)、仮想SW120を介してパケットをNWC110に転送する。なお、上述の通り、VM130は、パケットを送信する際、送信先MACアドレスを、論理マップ上で隣接するノードのMACアドレスを設定する。   First, as shown in FIG. 8, when the VM 130 of the server apparatus 100 transmits a packet (S101), the packet is transferred to the NWC 110 via the virtual SW 120. As described above, when transmitting a packet, the VM 130 sets a transmission destination MAC address as a MAC address of an adjacent node on the logical map.

NWC110は、VM130が送信したパケットを受信すると、NWエミュレーション部111が記憶部140に記憶されている論理マップを基に、NWエミュレーション処理を実施する(S102)。NWエミュレーション処理の詳細は後述する。なお、送信パケットは、NWエミュレーション処理によって廃棄される場合がある(例えば、FWルールが適用された場合)。   When the NWC 110 receives the packet transmitted by the VM 130, the NW emulation unit 111 performs NW emulation processing based on the logical map stored in the storage unit 140 (S102). Details of the NW emulation processing will be described later. A transmission packet may be discarded by NW emulation processing (for example, when an FW rule is applied).

次に、NWC110は、送信パケットの送信先を判別する。まず、NWC110は、送信パケットのヘッダを参照し、送信パケットがARP要求であるか否か、また、DHCPのパケットであるか否か等、すなわち、パケットが上位アプリケーション向けであるか否かを判別する(S103)。なお、送信パケットがARP要求パケットである場合、パケットのEthernet(登録商標)ヘッダのTypeフィールドは0x0806である。NWC110は、このように、ヘッダの値を参照してパケットの種類を判別する。   Next, the NWC 110 determines the transmission destination of the transmission packet. First, the NWC 110 refers to the header of the transmission packet to determine whether the transmission packet is an ARP request, whether it is a DHCP packet, or the like, that is, whether the packet is for a higher-level application. (S103). When the transmission packet is an ARP request packet, the Type field of the Ethernet (registered trademark) header of the packet is 0x0806. In this way, the NWC 110 refers to the header value to determine the type of packet.

パケットが上位アプリケーション向けである場合(S103;YES)、NWC110は、上述のように、パケットがARPパケットであるか否かを判別する(S104)。   If the packet is for a higher-level application (S103; YES), the NWC 110 determines whether the packet is an ARP packet as described above (S104).

パケットがARPパケットで無い場合(S104;NO)、NWC110は、送信パケットに従った上位アプリケーションの処理(DHCP等)を実施し、送信元のVM130に仮想SW120を介して応答し(S105)、処理を終了する。   When the packet is not an ARP packet (S104; NO), the NWC 110 performs processing of a higher-level application (such as DHCP) according to the transmission packet, and responds to the transmission source VM 130 via the virtual SW 120 (S105). Exit.

パケットがARPパケットである場合(S104;YES)、アドレス解決部113は、アドレス解決処理を実施し(S106)、処理を終了する。なお、詳細なアドレス解決処理については、後述する。   If the packet is an ARP packet (S104; YES), the address resolution unit 113 performs an address resolution process (S106) and ends the process. Detailed address resolution processing will be described later.

パケットが上位アプリケーション向けでは無い場合(S103;NO)、NWC110は、記憶部140が記憶している論理マップを参照し、送信先MACアドレスが同一サーバ装置100の他のVM130であるか否か、すなわち、パケットが同一サーバ向けか否かを判別する(S107)。   When the packet is not intended for the upper application (S103; NO), the NWC 110 refers to the logical map stored in the storage unit 140, and determines whether the destination MAC address is another VM 130 of the same server device 100. That is, it is determined whether the packet is for the same server (S107).

ここで、論理マップは、上述で説明したように、同一仮想システム内に存在しているVM130の情報(ホスト名等、図6参照)を有している。さらに記憶部140は、自装置のVM130の情報を記憶している。つまり、送信先MACアドレスを基に論理マップからホスト名を取得し、取得したホスト名が自装置情報に記憶されている場合、NWC110は、同一サーバ向けのパケットであると判別する。なお、MACアドレスを基に判別しても良い。   Here, as described above, the logical map has information on the VM 130 existing in the same virtual system (host name, etc., see FIG. 6). Furthermore, the storage unit 140 stores information of the VM 130 of the own device. That is, when the host name is acquired from the logical map based on the transmission destination MAC address, and the acquired host name is stored in the own device information, the NWC 110 determines that the packet is for the same server. The determination may be made based on the MAC address.

パケットが同一サーバ向けの場合(S107;YES)、NWC110は、仮想SW120を介して送信先のVM130にパケットを送信し(S108)、処理を終了する。   If the packet is for the same server (S107; YES), the NWC 110 transmits the packet to the destination VM 130 via the virtual SW 120 (S108), and ends the process.

パケットが同一サーバ向けでは無い場合(S107;NO)、NWC110は、再度論理マップを参照し、送信先MACアドレスがアクセス回線網のMACアドレスか否か、すなわち、パケットがアクセス回線網向けか否かを判別する(S109)。   When the packet is not intended for the same server (S107; NO), the NWC 110 refers to the logical map again to determine whether the destination MAC address is the MAC address of the access circuit network, that is, whether the packet is directed to the access circuit network. Is discriminated (S109).

パケットがアクセス回線網向けの場合(S109;YES)、NWC110は、仮想SW120を介して伝送SW装置200にパケットを送信し(S110)、処理を終了する。そして、パケットを受信した伝送SW装置200は、伝送ルールを基に、GW装置700を介して、パケットをアクセス回線網800へと転送することとなる。   When the packet is for the access line network (S109; YES), the NWC 110 transmits the packet to the transmission SW device 200 via the virtual SW 120 (S110), and ends the process. Then, the transmission SW device 200 that has received the packet transfers the packet to the access line network 800 via the GW device 700 based on the transmission rule.

パケットがアクセス回線網向けでは無い場合(S109;NO)、パケットが他のサーバ装置100向けであるということになるため、オーバーレイ処理部112は、オーバーレイ処理を実行し(S111)、パケットを送信して処理を終了する。なお、詳細なオーバーレイ処理については後述する。   If the packet is not intended for the access line network (S109; NO), it means that the packet is intended for the other server apparatus 100, so the overlay processing unit 112 executes overlay processing (S111) and transmits the packet. To finish the process. Detailed overlay processing will be described later.

以上が、サーバ装置100がパケットを送信する際の動作の一例である。   The above is an example of the operation when the server apparatus 100 transmits a packet.

続いて、NWエミュレーション部111のNWエミュレーション処理(図8、ステップS102)の一例について説明する。   Next, an example of NW emulation processing (FIG. 8, step S102) of the NW emulation unit 111 will be described.

NWエミュレーション部111は、NWエミュレーション処理を実行すると、図9に示すように、記憶部140から論理マップを取得する(S201)。   When executing the NW emulation processing, the NW emulation unit 111 acquires a logical map from the storage unit 140 as shown in FIG. 9 (S201).

NWエミュレーション部111は、取得した論理マップ、またはパケットが経由した仮想SW120のポート情報、もしくはパケットの送信元MACアドレス等から、パケットを送信したホスト(VM130)、またはアクセス回線網を判別する(S202)。例えば、パケットが、仮想SW120のポート5を経由したパケットであり、仮想SW120のポート5がVM130Eと接続していれば、NWエミュレーション部111は、VM130Eがパケットを送信したと判別することができる。この処理によって、NWエミュレーション部111は、論理マップ上でのスタート地点を判別することができる。   The NW emulation unit 111 determines the host (VM 130) that transmitted the packet or the access line network from the acquired logical map, the port information of the virtual SW 120 through which the packet has passed, or the transmission source MAC address of the packet (S202). ). For example, if the packet is a packet that has passed through the port 5 of the virtual SW 120 and the port 5 of the virtual SW 120 is connected to the VM 130E, the NW emulation unit 111 can determine that the VM 130E has transmitted the packet. By this processing, the NW emulation unit 111 can determine the start point on the logical map.

次にNWエミュレーション部111は、論理マップを基に、パケットが論理マップ上でFWを通過するか否かを判別する(S203)。   Next, the NW emulation unit 111 determines whether the packet passes the FW on the logical map based on the logical map (S203).

パケットが論理マップ上でFWを通過する場合(S203;YES)、NWエミュレーション部111は、論理マップを基に、パケットにFW情報を適用する(S204)。例えば、FW情報が、「送信先ポート番号が8080のパケットは全て廃棄」というルールである場合、NWエミュレーション部111は、パケットがこのルールと一致するか否かを判別する。   When the packet passes through the FW on the logical map (S203; YES), the NW emulation unit 111 applies the FW information to the packet based on the logical map (S204). For example, when the FW information is a rule that “all packets with the destination port number 8080 are discarded”, the NW emulation unit 111 determines whether or not the packet matches this rule.

NWエミュレーション部111は、上述のようにパケットが通過可能か否かを判別し(S205)、通過不可である場合(S205;NO)、パケットを廃棄し(S206)、処理を終了する。例えば、上述の例の場合、パケットの送信先ポート番号が8080の場合、パケットは、廃棄されることとなる。   The NW emulation unit 111 determines whether or not the packet can pass as described above (S205). If the packet cannot pass (S205; NO), the NW emulation unit 111 discards the packet (S206) and ends the process. For example, in the case of the above-described example, when the transmission destination port number of the packet is 8080, the packet is discarded.

パケットが通過可能である場合(S205;YES)、また、パケットが論理マップ上でFWを通過しない場合(S203;NO)、NWエミュレーション部111は、パケットが論理マップ上でL3を通過するか否かを判別する(S207)。   When the packet can pass (S205; YES), and when the packet does not pass FW on the logical map (S203; NO), the NW emulation unit 111 determines whether the packet passes L3 on the logical map. Is discriminated (S207).

パケットが論理マップ上でL3を通過する場合(S207;YES)、NWエミュレーション部111は、論理マップを基に、パケットにルーティング情報を適用する(S208)。例えば、ルーティング情報が、「送信先IPアドレスA.B.C.Dの場合、IPアドレスE.F.G.Hの装置に転送」というルールである場合、NWエミュレーション部111は、パケットがこのルールと一致するか否かを判別する。   When the packet passes L3 on the logical map (S207; YES), the NW emulation unit 111 applies the routing information to the packet based on the logical map (S208). For example, when the routing information is a rule of “forwarding to the device having the IP address EFGH when the destination IP address is ABCD”, the NW emulation unit 111 determines that the packet is this Determine whether the rule matches.

仮に、パケットの送信先IPアドレスが、全てのルーティング情報と一致しない場合、NWエミュレーション部111は、送信元のノード(VM130やアクセス回線網)にICMP(Internet Control Message Protocol)Destination Unreachableを送信する等の処理をする。   If the destination IP address of the packet does not match all the routing information, the NW emulation unit 111 transmits an ICMP (Internet Control Message Protocol) Destination Unreachable to the source node (VM 130 or access line network), etc. Process.

パケットが論理マップ上でL3を通過しない場合(S207;NO)、また、L3の処理を実行した後、NWエミュレーション部111は、パケットが論理マップ上でLBを通過するか否か判別する(S209)。   When the packet does not pass L3 on the logical map (S207; NO), and after executing the processing of L3, the NW emulation unit 111 determines whether or not the packet passes LB on the logical map (S209). ).

パケットが論理マップ上でLBを通過する場合(S209;YES)、NWエミュレーション部111は、論理マップを基に、パケットにLB情報を適用する(S210)。例えば、LB情報が「ポート80番のパケットはIPアドレスA.B.C.Dに振り分ける」というルールである場合、NWエミュレーション部111は、パケットがこのルールと一致するか否かを判別する。   When the packet passes through the LB on the logical map (S209; YES), the NW emulation unit 111 applies the LB information to the packet based on the logical map (S210). For example, when the LB information is a rule that “the packet of port 80 is assigned to the IP address ABCD”, the NW emulation unit 111 determines whether or not the packet matches this rule.

仮に、パケットの送信先ポート番号が80番である場合、NWエミュレーション部111は、送信先IPアドレスをA.B.C.Dに書き換え、次の処理に進む。また、パケットが全てのLB情報と一致しない場合、NWエミュレーション部111は、送信元のノードにICMPを送信する等の処理をする。   If the destination port number of the packet is 80, the NW emulation unit 111 sets the destination IP address as A.D. B. C. Rewrite to D and proceed to the next process. If the packet does not match all the LB information, the NW emulation unit 111 performs processing such as sending ICMP to the transmission source node.

パケットが論理マップ上でLBを通過しない場合(S209;NO)、また、LBの処理を実行した後、NWエミュレーション部111は、パケットが論理マップ上で送信先のノードに到着したか否か判別する(S211)。   When the packet does not pass through the LB on the logical map (S209; NO), and after executing the LB process, the NW emulation unit 111 determines whether the packet has arrived at the destination node on the logical map. (S211).

パケットが論理マップ上で送信先のノードに到着した場合(S211;YES)、NWエミュレーション部111は、処理を終了する。パケットが論理マップ上で送信先のノードに到着していない場合、NWエミュレーション部111は、ステップS203に戻り、再度処理を続ける。   When the packet arrives at the destination node on the logical map (S211; YES), the NW emulation unit 111 ends the process. If the packet has not arrived at the destination node on the logical map, the NW emulation unit 111 returns to step S203 and continues the process again.

上述では、NWエミュレーション部111の処理の一例について説明したが、処理内容はこれに限定されず、論理マップに基づいてパケットをエミュレーションできれば任意である。論理マップを作成するにあたり、FWやLB以外にもVPN(Virtual Private Network)等のネットワーク装置を論理マップに配置することも考えられる。この場合、NWエミュレーション部111は、各ネットワーク装置に従った処理を実行することとなる。   In the above description, an example of processing by the NW emulation unit 111 has been described. However, the processing content is not limited to this, and any processing can be used as long as a packet can be emulated based on a logical map. When creating a logical map, it is also conceivable to arrange a network device such as a VPN (Virtual Private Network) in addition to FW and LB in the logical map. In this case, the NW emulation unit 111 executes processing according to each network device.

以上が、NWエミュレーション部111のNWエミュレーション処理の一例である。   The above is an example of the NW emulation processing of the NW emulation unit 111.

続いて、オーバーレイ処理部112のオーバーレイ処理(図8、ステップS111)の一例について説明する。   Next, an example of overlay processing (FIG. 8, step S111) of the overlay processing unit 112 will be described.

オーバーレイ処理部112は、オーバーレイ処理を開始すると、図10に示すように、自装置発のパケットであるか否かを判別する(S301)。   When overlay processing is started, the overlay processing unit 112 determines whether or not the packet originates from the own device as shown in FIG. 10 (S301).

パケットが自装置発のパケット、すなわち、送信するパケットである場合(S301;YES)、オーバーレイ処理部112は、送信元ポート番号が0、送信先ポート番号が0、その他のフィールドが任意であるTCPヘッダを生成する(S302)。なお、その他のフィールドは、通信に影響を与えない値とする。   When the packet is a packet originating from the own device, that is, a packet to be transmitted (S301; YES), the overlay processing unit 112 has a TCP whose source port number is 0, destination port number is 0, and other fields are arbitrary. A header is generated (S302). The other fields are values that do not affect communication.

オーバーレイ処理部112は、TCPヘッダを生成した後、送信パケットにTCPヘッダを付与し(S303)、送信元IPアドレスが全て0、送信先IPアドレスが全て0、TOS(Type Of Service)が0、プロトコルが6(TCP)、その他のフィールドが任意であるIPヘッダを生成する(S304)。なお、その他のフィールドは、通信に影響を与えない値とする。   After generating the TCP header, the overlay processing unit 112 adds the TCP header to the transmission packet (S303), the transmission source IP address is all 0, the transmission destination IP address is all 0, and TOS (Type Of Service) is 0. An IP header in which the protocol is 6 (TCP) and other fields are optional is generated (S304). The other fields are values that do not affect communication.

オーバーレイ処理部112は、生成したIPヘッダを送信パケットに付与し(S305)、記憶部140に記憶されている情報を基に、送信元MACアドレスが送信先ノードと隣接する伝送SW装置200の識別MACアドレス、送信先MACアドレスが送信先サーバ装置100のMACアドレス、Ether Typeが0x0800(IP)であるEthernet(登録商標)ヘッダを生成する(S306)。   The overlay processing unit 112 adds the generated IP header to the transmission packet (S305), and based on the information stored in the storage unit 140, identifies the transmission SW device 200 whose transmission source MAC address is adjacent to the transmission destination node. An Ethernet (registered trademark) header having a MAC address, a destination MAC address of the destination server device 100, and an Ethernet Type of 0x0800 (IP) is generated (S306).

オーバーレイ処理部112は、生成したEthernet(登録商標)ヘッダを送信パケットに付与し(S307)、オーバーレイヘッダを付与した送信パケットを、仮想SW120を介して伝送SW装置200に送信し(S308)、処理を終了する。   The overlay processing unit 112 adds the generated Ethernet (registered trademark) header to the transmission packet (S307), and transmits the transmission packet with the overlay header to the transmission SW device 200 via the virtual SW 120 (S308). Exit.

オーバーレイ処理部112は、ステップS301での判別の際、上述までで説明したようなオーバーレイヘッダが付与されているパケットの場合は受信パケット、付与されていない場合は送信パケット、と判別することができる。例えば、IPヘッダの送信元アドレスが0のパケットの場合はオーバーレイヘッダが付与されたパケットである、と判別することができる。   When determining in step S301, the overlay processing unit 112 can determine that the packet is a received packet when the overlay header is added as described above, and is a transmitted packet when the packet is not added. . For example, if the IP header has a source address of 0, it can be determined that the packet has an overlay header.

オーバーレイ処理部112は、自装置発のパケットではない、すなわち、オーバーレイヘッダが付与されたパケットを受信したと判別した場合(S301;NO)、受信パケットから、Ethernet(登録商標)ヘッダを削除し(S311)、IPヘッダを削除し(S312)、TCPヘッダを削除(S313)、すなわち、オーバーレイヘッダを削除する。   If the overlay processing unit 112 determines that it has not received a packet originating from its own device, that is, has received a packet with an overlay header (S301; NO), it deletes the Ethernet (registered trademark) header from the received packet ( S311), the IP header is deleted (S312), the TCP header is deleted (S313), that is, the overlay header is deleted.

そして、オーバーレイ処理部112は、元のパケットのヘッダを参照し、本来の転送先へパケットを転送する(S314)。   Then, the overlay processing unit 112 refers to the header of the original packet and transfers the packet to the original transfer destination (S314).

上述では、オーバーレイ処理部112の処理の一例について説明したが、処理内容や生成するオーバーレイヘッダの内容はこれに限定されず、サーバ装置100間でオーバーレイネットワークを構築でき、パケット伝送システム1内の各装置が認識できる形態であれば、任意である。   In the above description, an example of the processing of the overlay processing unit 112 has been described. However, the processing content and the content of the generated overlay header are not limited to this, and an overlay network can be constructed between the server devices 100. Any form that the apparatus can recognize is optional.

以上が、オーバーレイ処理部112のオーバーレイ処理の一例である。   The above is an example of the overlay processing of the overlay processing unit 112.

続いて、アドレス解決部113のアドレス解決処理(図8、ステップS106)の一例について説明する。   Next, an example of address resolution processing (FIG. 8, step S106) of the address resolution unit 113 will be described.

アドレス解決部113は、アドレス解決処理を開始すると、図11に示すように、記憶部140から論理マップを取得する(S401)。   When starting the address resolution processing, the address resolution unit 113 acquires a logical map from the storage unit 140 as shown in FIG. 11 (S401).

アドレス解決部113は、ARP要求パケットの送信先IPアドレス、すなわち、MACアドレスを知りたいノードのIPアドレスが、論理マップ上に存在するか否かを判別する(S402)。   The address resolution unit 113 determines whether or not the destination IP address of the ARP request packet, that is, the IP address of the node for which the MAC address is desired exists on the logical map (S402).

ARP要求パケットの送信先IPアドレスが論理マップ上に存在しない場合(S402;NO)、アドレス解決部113は、DB400を参照して最新の論理マップを更新する(S403)。アドレス解決部113は、再度ARP要求パケットの送信先IPアドレスが論理マップ上に存在するか否かを判別し(S404)、最新の論理マップでも存在しない場合(S404;NO)、処理を終了する。   When the destination IP address of the ARP request packet does not exist on the logical map (S402; NO), the address resolution unit 113 updates the latest logical map with reference to the DB 400 (S403). The address resolution unit 113 determines again whether or not the transmission destination IP address of the ARP request packet exists on the logical map (S404). When the latest logical map does not exist (S404; NO), the process is terminated. .

ARP要求パケットの送信先IPアドレスが論理マップ上に存在する場合(S402;YES、S404;YES)、アドレス解決部113は、論理マップを基に、ARP応答を返送するべきノードを判別する(S405)。   When the transmission destination IP address of the ARP request packet exists on the logical map (S402; YES, S404; YES), the address resolution unit 113 determines the node to which the ARP response should be returned based on the logical map (S405). ).

アドレス解決部113は、論理マップを基に、ARP応答パケットを生成し(S406)、あたかもARP要求先のノードが応答したように、ARP要求パケットを送信したVM130にARP応答パケットを送信し(S407)、処理を終了する。   The address resolution unit 113 generates an ARP response packet based on the logical map (S406), and transmits the ARP response packet to the VM 130 that transmitted the ARP request packet as if the ARP request destination node responded (S407). ), The process is terminated.

上述では、アドレス解決部113の処理の一例について説明したが、処理内容はこれに限定されず、同一サーバ装置100上のVM130からのARP要求を、同一サーバ装置100上のアドレス解決部113が処理できれば任意である。   In the above description, an example of processing by the address resolution unit 113 has been described. However, the processing content is not limited to this, and the address resolution unit 113 on the same server device 100 processes an ARP request from the VM 130 on the same server device 100. It is optional if possible.

以上が、アドレス解決部113のアドレス解決処理の一例である。   The above is an example of the address resolution process of the address resolution unit 113.

続いて、サーバ装置100がパケットを受信する際の動作の一例について、図面を参照して説明する。以下の説明では、サーバ装置100が、他装置からパケットを受信した際の動作の一例について説明する。   Next, an example of an operation when the server apparatus 100 receives a packet will be described with reference to the drawings. In the following description, an example of an operation when the server apparatus 100 receives a packet from another apparatus will be described.

まず、図12に示すように、サーバ装置100がパケットを受信すると(S501)、仮想SW120を介してNWC110がパケットを受信し、NWC110は、受信パケットがオーバーレイパケットであるか否かを判別する(S502)。   First, as shown in FIG. 12, when the server apparatus 100 receives a packet (S501), the NWC 110 receives the packet via the virtual SW 120, and the NWC 110 determines whether the received packet is an overlay packet ( S502).

受信パケットがオーバーレイパケットである場合(S502;YES)、オーバーレイ処理部112は、オーバーレイ処理を実行し(S503)、処理を終了する。この場合のオーバーレイ処理は、例えば、図10のステップS311からステップS314までの処理となる。   If the received packet is an overlay packet (S502; YES), the overlay processing unit 112 executes the overlay process (S503) and ends the process. The overlay processing in this case is, for example, processing from step S311 to step S314 in FIG.

次に、NWC110は、受信パケットがアクセス回線網からのパケットか否かを判別する(S504)。   Next, the NWC 110 determines whether or not the received packet is a packet from the access line network (S504).

受信パケットがアクセス回線網からのパケットである場合(S504;YES)、NWエミュレーション部111は、論理マップを基に、NWエミュレーション処理を実行する(S505)。ここでの処理は、上述で説明した図9に示すNWエミュレーション処理と同様である。   When the received packet is a packet from the access line network (S504; YES), the NW emulation unit 111 executes NW emulation processing based on the logical map (S505). This process is the same as the NW emulation process shown in FIG. 9 described above.

そして、NWC110は、受信パケットが同一サーバ向けか否かを判別する(S506)。この判別方法は、上述で説明した図8のステップS107での判別方法と同様である。   Then, the NWC 110 determines whether the received packet is for the same server (S506). This determination method is the same as the determination method in step S107 of FIG. 8 described above.

受信パケットが同一サーバ向けである場合(S506;YES)、NWC110は、仮想SW120を介して送信先のVM130にパケットを送信し(S507)、処理を終了する。   If the received packet is for the same server (S506; YES), the NWC 110 transmits the packet to the destination VM 130 via the virtual SW 120 (S507), and ends the process.

受信パケットが同一サーバ向けでない場合(S506;NO)、オーバーレイ処理部112は、オーバーレイ処理を実施し(S508)、受信パケットを伝送SW装置200に転送して処理を終了する。この場合、受信パケットは、オーバーレイネットワークを介して別サーバ装置100に転送されることとなる。   If the received packet is not intended for the same server (S506; NO), the overlay processing unit 112 performs an overlay process (S508), transfers the received packet to the transmission SW device 200, and ends the process. In this case, the received packet is transferred to another server apparatus 100 via the overlay network.

受信パケットがアクセス回線網からのパケットでは無い場合(S504;NO)、NWC110は処理を終了する。   If the received packet is not a packet from the access line network (S504; NO), the NWC 110 ends the process.

以上が、サーバ装置100が、他装置からパケットを受信した際の動作の一例である。   The above is an example of the operation when the server apparatus 100 receives a packet from another apparatus.

続いて、理解を容易にするために、パケット伝送システム1に係るパケットの経路について図面を参照して説明する。   Subsequently, in order to facilitate understanding, a packet path according to the packet transmission system 1 will be described with reference to the drawings.

VM130間で通信をする場合、図13の実線で示すように、パケットの経路は、「VM130A〜NWC110A〜複数の伝送SW装置200〜NWC110B〜VM130B」となる。なお、上述で説明した通り、サーバ装置100Aとサーバ装置100B間はオーバーレイネットワークとなっている。また、VM130A、130Bと、NWC110A、110Bとは、仮想SW120を介して接続している。   When communication is performed between the VMs 130, as indicated by the solid lines in FIG. As described above, an overlay network is formed between the server device 100A and the server device 100B. Further, the VMs 130A and 130B and the NWCs 110A and 110B are connected via the virtual SW 120.

同一サーバ装置100内でVM130とNWC110とが通信する場合、パケットの経路は、破線で示すように、仮想SW120を介して同一サーバ装置100内で完結する。   When the VM 130 and the NWC 110 communicate within the same server device 100, the packet path is completed within the same server device 100 via the virtual SW 120, as indicated by a broken line.

VM130とアクセス回線網のノードとが通信する場合、一点鎖線で示すように、パケットの経路は、「VM130〜NWC110〜複数の伝送SW装置200〜GW装置700〜アクセス回線網800」となる。なお、アクセス回線網800から受信したパケット、また、アクセス回線網800に送信するパケットについては、オーバーレイネットワークを介さずに送信する。   When the VM 130 communicates with the node of the access line network, the path of the packet is “VM 130 to NWC 110 to a plurality of transmission SW devices 200 to GW devices 700 to the access line network 800”, as indicated by a dashed line. Note that packets received from the access line network 800 and packets transmitted to the access line network 800 are transmitted without going through the overlay network.

以上が、パケット伝送システム1に係るパケットの経路についての説明である。   The above is the description of the packet path according to the packet transmission system 1.

以上説明したように、本実施形態に係るパケット伝送システム1によれば、パケット伝送システム1内に複数配置している各サーバ装置100がNWC110を有しているため、伝送NWC300の負荷を軽減することができ、さらに、各NWC110の負荷も分散することができる。   As described above, according to the packet transmission system 1 according to the present embodiment, each server apparatus 100 arranged in the packet transmission system 1 has the NWC 110, and thus the load on the transmission NWC 300 is reduced. Furthermore, the load on each NWC 110 can also be distributed.

また、同一サーバ装置100内に、ホスト(VM130)とNWCが属しているため、ホスト−NWC間の通信帯域の制限が実質的に無くなる。すなわち、ホスト−NWC間で通信が輻輳することは無い。   In addition, since the host (VM 130) and the NWC belong to the same server device 100, there is substantially no restriction on the communication band between the host and the NWC. That is, there is no congestion between the host and NWC.

また、ホストから送信されたARP要求は、同一サーバ装置100内のNWCが処理するため、パケット伝送システム1内に大規模な数のホスト(VM)を配置した場合でも、システム内でARPパケットが氾濫することは無くなり、各伝送SW装置200の負荷を軽減することができる。   Further, since the ARP request transmitted from the host is processed by the NWC in the same server apparatus 100, even when a large number of hosts (VMs) are arranged in the packet transmission system 1, the ARP packet is not transmitted in the system. No flooding occurs, and the load on each transmission SW device 200 can be reduced.

また、各サーバ装置100間でオーバーレイネットワークを構築しているため、伝送SW装置200が保持する伝送ルールは、オーバーレイネットワークに従った伝送ルールを保持していれば良い。すなわち、オーバーレイネットワークを適用した本実施形態に係る伝送ルール数は、オーバーレイネットワークを適用しない通常の伝送ルール数(12tupleの伝送ルール)と比較すると、大幅に削減することができる。   In addition, since an overlay network is constructed between the server devices 100, the transmission rule held by the transmission SW device 200 only needs to hold a transmission rule according to the overlay network. That is, the number of transmission rules according to the present embodiment to which the overlay network is applied can be significantly reduced as compared with the normal number of transmission rules to which the overlay network is not applied (the transmission rule of 12 tuples).

また、伝送NWC300によって複数の伝送SW装置200の設定を投入することができるため、容易に伝送SW装置200を増設することができる。   In addition, since a plurality of transmission SW devices 200 can be set by the transmission NWC 300, the transmission SW devices 200 can be easily added.

(変形例)
本発明は、上記実施形態に限定されず、種々の変形例及び応用が可能である。本実施形態に係るパケット伝送システム1は、各装置の障害監視機能も搭載することができる。
(Modification)
The present invention is not limited to the above embodiment, and various modifications and applications are possible. The packet transmission system 1 according to the present embodiment can also be equipped with a failure monitoring function of each device.

この場合、各サーバ装置100のNWC110は、自装置のVM130に定期的に監視パケットを送信し、応答がこなかった場合に異常と判断し、DB400の障害監視テーブルを更新する。また、各サーバ装置100のNWC110は、定期的にDB400の障害監視テーブルを更新する。   In this case, the NWC 110 of each server device 100 periodically transmits a monitoring packet to the VM 130 of its own device, and when there is no response, determines that it is abnormal and updates the failure monitoring table of the DB 400. Further, the NWC 110 of each server apparatus 100 periodically updates the failure monitoring table of the DB 400.

マスター装置600は、DB400の障害監視テーブルを定期的に参照し、異常と判断されているVM130がある場合、また、一定期間以上更新していないNWC110がある場合、管理者等にこれらの障害の情報を通知する。   The master device 600 periodically refers to the failure monitoring table of the DB 400, and when there is a VM 130 that is determined to be abnormal, or when there is an NWC 110 that has not been updated for a certain period of time, the administrator etc. Notify information.

このようにして、パケット伝送システム1における障害監視を実現することができる。   In this way, failure monitoring in the packet transmission system 1 can be realized.

また、NWエミュレーション部111は、LBの処理を実行した際、パケットの送信先アドレスを書き換える。例えば、その後、送信先アドレスを書き換えたサーバ装置100とは別のサーバ装置100が送信したパケットに対する応答を受信した場合、NATの戻りパケットとして、送信元アドレスを書き換える必要があるが、どのアドレスに書き換えれば良いか不明となってしまう。   Further, the NW emulation unit 111 rewrites the transmission destination address of the packet when executing the LB processing. For example, when a response to a packet transmitted by a server device 100 other than the server device 100 whose transmission destination address has been rewritten is subsequently received, the transmission source address needs to be rewritten as a NAT return packet. It becomes unclear whether it should be rewritten.

このような問題を避けるため、本実施形態に係るパケット伝送システム1では、例えばNAT情報のような各サーバ装置100間で共有しておく必要がある情報を、オーバーレイネットワークを介して送受信することも可能である。この場合、各サーバ装置100は、オーバーレイパケットにその情報を含めて送信し、受信したサーバ装置100はその情報を記憶部140に記憶する。   In order to avoid such a problem, in the packet transmission system 1 according to the present embodiment, information that needs to be shared between the server apparatuses 100 such as NAT information may be transmitted and received via the overlay network. Is possible. In this case, each server device 100 transmits the overlay packet including the information, and the received server device 100 stores the information in the storage unit 140.

また、DB400に各種共有情報を記憶させることも可能である。この場合、各サーバ装置100は、随時DB400を参照し、共有情報を自装置の記憶部140に記憶し、または処理時に随時DB400を参照する。   Various shared information can also be stored in the DB 400. In this case, each server device 100 refers to the DB 400 as needed, stores the shared information in the storage unit 140 of the own device, or refers to the DB 400 as needed during processing.

本実施形態に係るパケット伝送システム1では、上述で説明したオーバーレイネットワークを構築することで、伝送SW装置200が保持する伝送ルールの大幅な削減を実現しているが、これに限られず、MPLS(Multi−Protocol Label Switching)技術を適用することも可能である。   In the packet transmission system 1 according to the present embodiment, by constructing the overlay network described above, the transmission rules held by the transmission SW device 200 are significantly reduced. However, the present invention is not limited to this, and MPLS ( (Multi-Protocol Label Switching) technology can also be applied.

この場合、サーバ装置100は、パケット送信時にラベルヘッダと呼ばれる識別子を付与して送信し、伝送SW装置200は、受信したパケットのラベルヘッダを基に、保持しているラベルテーブル(ラベル情報と転送先ノードの情報とを関連付けているテーブル)に従ってパケットのルーティングを行う。すなわち、サーバ装置100のオーバーレイ処理部112は、ラベルヘッダの付与・削除の処理を実施し、伝送SW装置200の伝送ルール記憶部210は、ラベル情報と転送先ノードとの情報を関連付けた伝送ルールを記憶する。このような構成を採用しても、サーバ装置100の数に比例した数の伝送ルールを伝送SW装置200に記憶させる必要がなくなり、伝送SW装置200が保持する伝送ルールの大幅な削減を実現することができる。   In this case, the server apparatus 100 sends an identifier called a label header at the time of packet transmission, and the transmission SW apparatus 200 holds a label table (label information and transfer information) based on the label header of the received packet. A packet is routed according to a table associated with the information of the destination node. That is, the overlay processing unit 112 of the server device 100 performs label header addition / deletion processing, and the transmission rule storage unit 210 of the transmission SW device 200 transmits the transmission rule that associates the label information with the information of the transfer destination node. Remember. Even if such a configuration is adopted, it is not necessary to store the number of transmission rules in proportion to the number of server devices 100 in the transmission SW device 200, and the transmission rules held by the transmission SW device 200 can be greatly reduced. be able to.

また、上記実施形態では、複数の装置によって構成されるパケット伝送システム1について説明したが、これに限られず、複数の装置を物理的に一つの装置で実現しても良い。   In the above-described embodiment, the packet transmission system 1 including a plurality of devices has been described. However, the present invention is not limited to this, and a plurality of devices may be physically realized by one device.

また、本実施形態に係るパケット伝送システム1を構成する各装置は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。たとえば、上述の動作を実行するためのプログラム19を、コンピュータが読み取り可能な記録媒体(フレキシブルディスク、CD−ROM、DVD−ROM等)に格納して配布し、このプログラム19をコンピュータにインストールすることにより、上述の処理を実行するパケット伝送システム1を構成する各装置を構成してもよい。また、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置にこのプログラム19を格納しておき、通常のコンピュータシステムがダウンロード等することでパケット伝送システム1を構成する各装置を構成してもよい。   Moreover, each apparatus which comprises the packet transmission system 1 which concerns on this embodiment is realizable using a normal computer system irrespective of a dedicated system. For example, the program 19 for executing the above-described operation is stored and distributed on a computer-readable recording medium (flexible disk, CD-ROM, DVD-ROM, etc.), and the program 19 is installed in the computer. Thus, each device constituting the packet transmission system 1 that executes the above-described processing may be configured. Further, the program 19 may be stored in a storage device included in a server device on a communication network such as the Internet, and each device constituting the packet transmission system 1 may be configured by being downloaded by a normal computer system. .

また、パケット伝送システム1を構成する各装置の機能を、OS(オペレーティングシステム)とアプリケーションプログラムの分担、またはOSとアプリケーションプログラムとの協働により実現する場合などには、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。   Further, when the functions of the devices constituting the packet transmission system 1 are realized by sharing of an OS (operating system) and an application program, or by cooperation between the OS and the application program, only the application program portion is recorded on the recording medium. Or may be stored in a storage device.

また、搬送波にプログラム19を重畳し、通信ネットワークを介して配信することも可能である。たとえば、通信ネットワーク上の掲示板(BBS:Bulletin Board System)にこのプログラム19を掲示し、ネットワークを介してプログラム19を配信してもよい。そして、このプログラム19を起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、上述の処理を実行できるように構成してもよい。   It is also possible to superimpose the program 19 on a carrier wave and distribute it via a communication network. For example, the program 19 may be posted on a bulletin board (BBS: Bulletin Board System) on a communication network, and the program 19 may be distributed via the network. The program 19 may be activated and executed in the same manner as other application programs under the control of the OS, so that the above-described processing can be executed.

なお、本発明は、本発明の広義の趣旨及び範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。   Note that the present invention can be variously modified and modified without departing from the broad meaning and scope of the present invention. Further, the above-described embodiment is for explaining the present invention, and does not limit the scope of the present invention. That is, the scope of the present invention is shown not by the embodiments but by the claims. Various modifications within the scope of the claims and within the scope of the equivalent invention are considered to be within the scope of the present invention.

1 パケット伝送システム
100 サーバ装置
110 NWC
111 NWエミュレーション部
112 オーバーレイ処理部
113 アドレス解決部
200 伝送SW装置
300 伝送NWC
400 DB
500 L2装置
600 マスター装置
700 GW装置
800 アクセス回線網
1100 制御装置
1200 スイッチ装置
1300 サーバ
10 内部バス
11 制御部
12 主記憶部
13 外部記憶部
14 操作部
15 表示部
16 送受信部
19 プログラム
1 Packet transmission system 100 Server device 110 NWC
111 NW Emulation Unit 112 Overlay Processing Unit 113 Address Resolution Unit 200 Transmission SW Device 300 Transmission NWC
400 DB
500 L2 device 600 Master device 700 GW device 800 Access line network 1100 Control device 1200 Switch device 1300 Server 10 Internal bus 11 Control unit 12 Main storage unit 13 External storage unit 14 Operation unit 15 Display unit 16 Transmission / reception unit 19 Program

Claims (17)

ノードからパケットを受信し、前記受信パケットのヘッダに基づいたノードに前記受信パケットを転送する仮想スイッチ手段と、
前記仮想スイッチ手段から自己宛にパケットが転送されてきた場合に、前記パケットを受信し、前記受信パケットのヘッダに従って、前記受信パケットのヘッダを書き換える、また、ネットワークプロトコルに従った処理を実行するネットワーク制御手段と、
仮想的に構築されたネットワークの情報を記憶する記憶手段と、を備え、
前記ネットワーク制御手段は、
前記記憶手段に記憶されたネットワークの情報を基に、前記仮想的に構築されたネットワーク上で、前記受信パケットを模擬的に通過させるエミュレーション手段と、
前記受信パケットに自装置が属するシステム独自のヘッダが付与されている場合、前記独自のヘッダを削除し、前記受信パケットに前記独自のヘッダが付与されていない場合、前記独自のヘッダを付与するオーバーレイ処理手段と、
前記受信パケットがノードに対するアドレス要求パケットである場合に、前記記憶手段に記憶されたネットワークの情報を基に、前記アドレス要求パケットを送信したノードにアドレス応答パケットを返送するアドレス解決手段と、を備える、
ことを特徴とするサーバ装置。
Virtual switch means for receiving a packet from a node and forwarding the received packet to a node based on a header of the received packet;
A network that receives the packet and rewrites the header of the received packet according to the header of the received packet when the packet is transferred from the virtual switch means to itself, and executes processing according to a network protocol Control means;
Storage means for storing information of the virtually constructed network,
The network control means includes
On the basis of the network information stored in the storage means, emulation means for passing the received packet in a simulated manner on the virtually constructed network;
An overlay that deletes the unique header when the header belonging to the system to which the device belongs is added to the received packet, and adds the unique header when the unique header is not assigned to the received packet Processing means;
Address resolution means for returning an address response packet to the node that sent the address request packet based on the network information stored in the storage means when the received packet is an address request packet for the node. ,
The server apparatus characterized by the above-mentioned.
前記エミュレーション手段は、前記記憶手段に記憶されたネットワークの情報を基に、前記受信パケットが仮想的に構築されたネットワーク上に配置されているノードを通過するか否かを判別し、通過すると判別した場合、該ネットワークノードに相当する処理を前記受信パケットに適用する、
ことを特徴とする請求項1に記載のサーバ装置。
The emulation means determines whether or not the received packet passes through a node arranged on the virtually constructed network based on the network information stored in the storage means, and determines that it passes. If so, a process corresponding to the network node is applied to the received packet.
The server apparatus according to claim 1.
前記オーバーレイ処理手段は、前記受信パケットに前記独自のヘッダを付与する場合、前記記憶手段に記憶されたネットワークの情報を基に、前記受信パケットに、送信先MAC(Media Access Control)アドレスが送信先ノードのMACアドレスであり、送信元MACアドレスが送信先ノードと隣接するノードを一意に識別する識別子を示すMACアドレスであるEthernet(登録商標)ヘッダを付与する、
ことを特徴とする請求項1又は2に記載のサーバ装置。
When the overlay processing unit adds the unique header to the received packet, a transmission destination MAC (Media Access Control) address is transmitted to the received packet based on the network information stored in the storage unit. An Ethernet (registered trademark) header, which is a MAC address of a node, and a MAC address indicating an identifier for uniquely identifying a node adjacent to a transmission destination node by a transmission source MAC address
The server apparatus according to claim 1 or 2, wherein
前記アドレス解決手段は、前記アドレス要求パケットと前記記憶手段に記憶されたネットワークの情報を基に、アドレス要求先のノードを判別し、アドレス要求先のノードのMACアドレスを含めたアドレス応答パケットをアドレス要求元のノードに返送する、
ことを特徴とする請求項1乃至3のいずれか1項に記載のサーバ装置。
The address resolution means determines an address request destination node based on the address request packet and network information stored in the storage means, and addresses an address response packet including the MAC address of the address request destination node. Send it back to the requesting node,
The server apparatus according to any one of claims 1 to 3, wherein
前記オーバーレイ処理手段は、前記受信パケットに前記独自のヘッダを付与する場合、送信先及び送信元MACアドレスの値以外で、通信に影響を与えない部分以外は0としたTCP(Transmission Control Protocol)ヘッダ、IP(Internet Protocol)ヘッダ、Ethernet(登録商標)ヘッダを付与する、
ことを特徴とする請求項1乃至4のいずれか1項に記載のサーバ装置。
When the unique header is added to the received packet, the overlay processing means sets a TCP (Transmission Control Protocol) header to 0 except for values other than the destination and source MAC address values that do not affect communication. , IP (Internet Protocol) header, Ethernet (registered trademark) header,
The server device according to any one of claims 1 to 4, wherein
任意のコンピュータの動作を模倣することで仮想的な機器の動作を実現する複数の仮想機器をさらに備え、
前記仮想機器は、パケットを送信する場合、送信先MACアドレスが前記仮想的に構築されたネットワーク上で隣接するノードのMACアドレスであるEthernet(登録商標)ヘッダを付与したパケットを送信する、
ことを特徴とする請求項1乃至5のいずれか1項に記載のサーバ装置。
It further comprises a plurality of virtual devices that realize the operation of a virtual device by imitating the operation of an arbitrary computer,
When the virtual device transmits a packet, the virtual device transmits a packet with an Ethernet (registered trademark) header, which is a MAC address of a node adjacent to the destination MAC address on the virtually constructed network.
The server device according to claim 1, wherein the server device is a device.
前記記憶手段は、自サーバ装置が有する前記複数の仮想機器の情報をさらに記憶し、
前記ネットワーク制御手段は、前記記憶手段に記憶された前記ネットワークの情報を基に、前記受信パケットの送信元又は送信先ノードのホスト名を取得し、前記取得した送信先ノードのホスト名が前記記憶手段に記憶されたか否か判別し、前記送信先ノードのホスト名が記憶されていた場合、前記受信パケットが、自サーバ装置が有する前記仮想機器宛のパケットであると判別し、前記送信先ノードのホスト名が記憶されていない場合、前記受信パケットが、他の前記サーバ装置が有する前記仮想機器宛のパケットであると判別する、
ことを特徴とする請求項6に記載のサーバ装置。
The storage means further stores information on the plurality of virtual devices that the server device has,
The network control unit acquires a host name of a transmission source or transmission destination node of the received packet based on the network information stored in the storage unit, and the acquired host name of the transmission destination node is stored in the storage unit. If the host name of the destination node is stored, it is determined that the received packet is a packet addressed to the virtual device included in the server device, and the destination node If the host name is not stored, it is determined that the received packet is a packet addressed to the virtual device of the other server device.
The server device according to claim 6.
パケットを送受信する複数のサーバ装置と、パケットを転送する複数の伝送スイッチ装置と、前記複数の伝送スイッチ装置を制御する伝送ネットワーク制御装置と、を備えるパケット伝送システムであって、
前記サーバ装置と前記伝送スイッチ装置及び前記伝送ネットワーク制御装置は、それぞれネットワークを介して相互に接続され、
前記伝送ネットワーク制御装置は、
パケットのヘッダ情報と転送先ノードの情報とを関連付けた伝送ルールを生成する伝送ルール生成手段と、
前記伝送ルール生成手段に生成された伝送ルールを前記複数の伝送スイッチ装置に送信する伝送ルール送信手段と、を備え、
前記伝送スイッチ装置は、それぞれ、
前記伝送ネットワーク制御装置が送信した前記伝送ルールを受信し、受信した伝送ルールを記憶する伝送ルール記憶手段と、
ノードからパケットを受信し、前記伝送ルール記憶手段に記憶された前記伝送ルールと前記受信パケットのヘッダ情報とに基づいて転送先ノードを求め、求めた転送先ノードに前記受信パケットを転送するパケット転送手段と、を備え、
前記サーバ装置は、それぞれ、
ノードからパケットを受信し、前記受信パケットのヘッダに基づいたノードに前記受信パケットを転送する仮想スイッチ手段と、
前記仮想スイッチ手段から自己宛にパケットが転送されてきた場合に、前記パケットを受信し、前記受信パケットのヘッダに従って、前記受信パケットのヘッダを書き換える、また、ネットワークプロトコルに従った処理を実行するネットワーク制御手段と、を備える、
ことを特徴とするパケット伝送システム。
A packet transmission system comprising a plurality of server devices that transmit and receive packets, a plurality of transmission switch devices that transfer packets, and a transmission network control device that controls the plurality of transmission switch devices,
The server device, the transmission switch device, and the transmission network control device are connected to each other via a network,
The transmission network control device comprises:
A transmission rule generating means for generating a transmission rule that associates the header information of the packet with the information of the transfer destination node;
Transmission rule transmission means for transmitting the transmission rule generated by the transmission rule generation means to the plurality of transmission switch devices, and
The transmission switch devices are respectively
A transmission rule storage means for receiving the transmission rule transmitted by the transmission network control device and storing the received transmission rule;
Packet transfer for receiving a packet from a node, obtaining a transfer destination node based on the transmission rule stored in the transmission rule storage means and header information of the received packet, and transferring the received packet to the obtained transfer destination node Means, and
The server devices are respectively
Virtual switch means for receiving a packet from a node and forwarding the received packet to a node based on a header of the received packet;
A network that receives the packet and rewrites the header of the received packet according to the header of the received packet when the packet is transferred from the virtual switch means to itself, and executes processing according to a network protocol Control means,
A packet transmission system characterized by the above.
前記サーバ装置は、それぞれ、
仮想的に構築されたネットワークの情報を記憶する記憶手段をさらに備え、
前記ネットワーク制御手段は、
前記記憶手段に記憶されたネットワークの情報を基に、前記仮想的に構築されたネットワーク上で、前記受信パケットを模擬的に通過させるエミュレーション手段と、
前記受信パケットに自装置が属するシステム独自のヘッダが付与されている場合、前記独自のヘッダを削除し、前記受信パケットに前記独自のヘッダが付与されていない場合、前記独自のヘッダを付与するオーバーレイ処理手段と、
前記受信パケットがノードに対するアドレス要求パケットである場合に、前記記憶手段に記憶されたネットワークの情報を基に、前記アドレス要求パケットを送信したノードにアドレス応答パケットを返送するアドレス解決手段と、を備える、
ことを特徴とする請求項8に記載のパケット伝送システム。
The server devices are respectively
A storage means for storing information on the virtually constructed network;
The network control means includes
On the basis of the network information stored in the storage means, emulation means for passing the received packet in a simulated manner on the virtually constructed network;
An overlay that deletes the unique header when the header belonging to the system to which the device belongs is added to the received packet, and adds the unique header when the unique header is not assigned to the received packet Processing means;
Address resolution means for returning an address response packet to the node that sent the address request packet based on the network information stored in the storage means when the received packet is an address request packet for the node. ,
The packet transmission system according to claim 8.
前記伝送ルール生成手段は、送信先又は送信元MACアドレスの情報と転送先のノードの情報とを関連付けた伝送ルールを生成し、
前記伝送ルール記憶手段は、前記伝送ルール生成手段が生成した前記伝送ルールを受信し、受信した前記伝送ルールを記憶し、
前記パケット転送手段は、ノードから受信したパケットの送信先又は送信元MACアドレスと前記伝送ルール記憶手段に記憶された伝送ルールとを基に転送先ノードを求め、求めた転送先ノードに前記受信パケットを転送する、
ことを特徴とする請求項8又は9に記載のパケット伝送システム。
The transmission rule generation means generates a transmission rule that associates information on a destination or source MAC address with information on a destination node,
The transmission rule storage means receives the transmission rule generated by the transmission rule generation means, stores the received transmission rule,
The packet transfer means obtains a transfer destination node based on a transmission destination or a source MAC address of a packet received from a node and a transmission rule stored in the transmission rule storage means, and sends the received packet to the obtained transfer destination node. Forward,
The packet transmission system according to claim 8 or 9, wherein
前記パケット伝送システムは、任意のデータを記憶する記憶装置をさらに備え、
前記記憶装置は、前記サーバ装置と前記伝送スイッチ装置及び前記伝送ネットワーク制御装置とそれぞれネットワークを介して相互に接続され、
前記伝送ネットワーク制御装置は、ユーザが仮想的に構築したネットワークの情報を前記記憶装置に記憶する仮想ネットワーク記憶手段をさらに備え、
前記記憶手段は、前記記憶装置から前記仮想的に構築されたネットワークの情報を取得し、取得したネットワークの情報を記憶する、
ことを特徴とする請求項9に記載のパケット伝送システム。
The packet transmission system further includes a storage device for storing arbitrary data,
The storage device is connected to the server device, the transmission switch device, and the transmission network control device via a network,
The transmission network control device further comprises virtual network storage means for storing information of a network virtually constructed by a user in the storage device,
The storage means acquires information on the virtually constructed network from the storage device, and stores the acquired network information.
The packet transmission system according to claim 9.
前記仮想ネットワーク記憶手段は、前記ユーザが仮想的に構築したネットワークの情報を日時と共に前記記憶装置に記憶し、
前記記憶手段は、前記ネットワークの情報を日時と共に記憶し、前記記憶装置から前記ネットワークの情報を取得する場合、前記記憶装置に記憶された前記ネットワークの情報の更新日時と既に記憶している前記ネットワークの情報の更新日時とを比較し、既に記憶している前記ネットワークの情報の更新日時の方が古い場合、前記記憶装置から前記ネットワークの情報を取得し、取得したネットワークの情報を記憶する、
ことを特徴とする請求項11に記載のパケット伝送システム。
The virtual network storage means stores information of a network virtually constructed by the user together with a date and time in the storage device,
The storage means stores the network information together with the date and time, and when acquiring the network information from the storage device, the network information already stored and the update date and time of the network information stored in the storage device The update date and time of the information, and if the update date and time of the network information already stored is older, the network information is acquired from the storage device, and the acquired network information is stored.
The packet transmission system according to claim 11.
前記アドレス解決手段は、前記記憶手段に記憶されたネットワークの情報を基に、アドレス要求先のノードを判別できない場合、前記記憶装置を参照し、最新の前記ネットワークの情報を取得し、再度アドレス要求先のノードを判別する、
請求項11又は12に記載のパケット伝送システム
When the address resolution unit cannot determine the address request destination node based on the network information stored in the storage unit, the address resolution unit refers to the storage device, acquires the latest network information, and again requests the address. Determine the destination node,
The packet transmission system according to claim 11 or 12.
前記記憶装置は、分散データベースである、
ことを特徴とする請求項11又は12に記載のパケット伝送システム。
The storage device is a distributed database.
The packet transmission system according to claim 11 or 12, characterized by the above.
パケットを送受信する複数のサーバ装置と、パケットを転送する複数の伝送スイッチ装置と、を備えるパケット伝送システムであって、
前記サーバ装置と前記伝送スイッチ装置はそれぞれネットワークを介して相互に接続され、
前記サーバ装置は、送信先MACアドレスが送信先ノードのMACアドレスであり、送信元MACアドレスが送信先ノードと隣接するノードを一意に識別する識別子を示すMACアドレスであるEthernet(登録商標)ヘッダを付与してパケットを送信し、
前記伝送スイッチ装置は、前記サーバ装置または他の前記伝送スイッチ装置からパケットを受信し、前記受信パケットのEthernet(登録商標)ヘッダの送信元及び送信先MACアドレスと、予め記憶しているパケットのヘッダ情報と転送先ノードの情報とを関連付けた伝送ルールと、を基に転送先ノードを求め、求めた転送先ノードに前記受信パケットを転送する、
ことを特徴とするパケット伝送システム。
A packet transmission system comprising a plurality of server devices that transmit and receive packets and a plurality of transmission switch devices that transfer packets,
The server device and the transmission switch device are connected to each other via a network,
The server device includes an Ethernet (registered trademark) header in which a transmission destination MAC address is a MAC address of a transmission destination node, and a transmission source MAC address is a MAC address indicating an identifier for uniquely identifying a node adjacent to the transmission destination node. Grant and send the packet,
The transmission switch apparatus receives a packet from the server apparatus or another transmission switch apparatus, and transmits a source and destination MAC address of an Ethernet (registered trademark) header of the received packet, and a packet header stored in advance. Obtaining a forwarding destination node based on the transmission rule that associates the information and the forwarding destination node information, and forwarding the received packet to the obtained forwarding destination node;
A packet transmission system characterized by the above.
パケットを送受信する複数のサーバ装置と、パケットを転送する複数の伝送スイッチ装置と、前記複数の伝送スイッチ装置を制御する伝送ネットワーク制御装置と、を備え、前記サーバ装置と前記伝送スイッチ装置及び前記伝送ネットワーク制御装置がそれぞれネットワークを介して相互に接続されているシステムでパケットを伝送する方法であって、
前記伝送ネットワーク制御装置がパケットのヘッダ情報と転送先ノードの情報とを関連付けた伝送ルールを生成する伝送ルール生成ステップと、
前記伝送ネットワーク制御装置が前記伝送ルール生成ステップで生成された伝送ルールを前記複数の伝送スイッチ装置に送信する伝送ルール送信ステップと、
前記伝送スイッチ装置が前記伝送ルール送信ステップで送信された前記伝送ルールを受信し、受信した伝送ルールを記憶する伝送ルール記憶ステップと、
前記伝送スイッチ装置がノードからパケットを受信し、前記伝送ルール記憶ステップで記憶された前記伝送ルールと前記受信パケットのヘッダ情報とに基づいて転送先ノードを求め、求めた転送先ノードに前記受信パケットを転送するパケット転送ステップと、
前記サーバ装置がノードからパケットを受信し、前記受信パケットのヘッダに基づいたノードに前記受信パケットを転送する仮想スイッチステップと、
前記サーバ装置が前記仮想スイッチステップで自己宛にパケットが転送された場合に、前記パケットを受信し、前記受信パケットのヘッダに従って、前記受信パケットのヘッダを書き換える、また、ネットワークプロトコルに従った処理を実行するネットワーク制御ステップと、を備える、
ことを特徴とするパケット伝送方法。
A plurality of server apparatuses that transmit and receive packets; a plurality of transmission switch apparatuses that transfer packets; and a transmission network control apparatus that controls the plurality of transmission switch apparatuses, the server apparatus, the transmission switch apparatus, and the transmission A method of transmitting packets in a system in which network control devices are connected to each other via a network,
A transmission rule generating step for generating a transmission rule in which the transmission network control device associates the header information of the packet with the information of the transfer destination node;
A transmission rule transmission step in which the transmission network control device transmits the transmission rule generated in the transmission rule generation step to the plurality of transmission switch devices;
A transmission rule storage step in which the transmission switch device receives the transmission rule transmitted in the transmission rule transmission step and stores the received transmission rule;
The transmission switch device receives a packet from a node, obtains a transfer destination node based on the transmission rule stored in the transmission rule storage step and header information of the received packet, and sends the received packet to the obtained transfer destination node. A packet forwarding step for forwarding
A virtual switch step in which the server device receives a packet from a node and forwards the received packet to a node based on a header of the received packet;
When the server device transfers a packet addressed to itself in the virtual switch step, the server device receives the packet, rewrites the header of the received packet according to the header of the received packet, and performs processing according to a network protocol. A network control step to perform,
And a packet transmission method.
コンピュータを、
ノードからパケットを受信し、前記受信パケットのヘッダに基づいたノードに前記受信パケットを転送する仮想スイッチ手段、
前記仮想スイッチ手段から自己宛にパケットが転送されてきた場合に、前記パケットを受信し、前記受信パケットのヘッダに従って、前記受信パケットのヘッダを書き換える、また、ネットワークプロトコルに従った処理を実行するネットワーク制御手段、
仮想的に構築されたネットワークの情報を記憶する記憶手段、
前記記憶手段に記憶されたネットワークの情報を基に、前記仮想的に構築されたネットワーク上で、前記受信パケットを模擬的に通過させるエミュレーション手段、
前記受信パケットに自装置が属するシステム独自のヘッダが付与されている場合、前記独自のヘッダを削除し、前記受信パケットに前記独自のヘッダが付与されていない場合、前記独自のヘッダを付与するオーバーレイ処理手段、
前記受信パケットがノードに対するアドレス要求パケットである場合に、前記記憶手段に記憶されたネットワークの情報を基に、前記アドレス要求パケットを送信したノードにアドレス応答パケットを返送するアドレス解決手段、として機能させる、
ことを特徴とするプログラム。
Computer
Virtual switch means for receiving a packet from a node and transferring the received packet to a node based on a header of the received packet;
A network that receives the packet and rewrites the header of the received packet according to the header of the received packet when the packet is transferred from the virtual switch means to itself, and executes processing according to a network protocol Control means,
Storage means for storing information of a virtually constructed network;
Emulation means for simulating passing the received packet on the virtually constructed network based on the network information stored in the storage means;
An overlay that deletes the unique header when the header belonging to the system to which the device belongs is added to the received packet, and adds the unique header when the unique header is not assigned to the received packet Processing means,
When the received packet is an address request packet for a node, based on the network information stored in the storage means, function as address resolution means for returning an address response packet to the node that sent the address request packet ,
A program characterized by that.
JP2011055247A 2011-03-14 2011-03-14 Server apparatus, packet transmission system, packet transmission method and program Active JP5580766B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011055247A JP5580766B2 (en) 2011-03-14 2011-03-14 Server apparatus, packet transmission system, packet transmission method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011055247A JP5580766B2 (en) 2011-03-14 2011-03-14 Server apparatus, packet transmission system, packet transmission method and program

Publications (2)

Publication Number Publication Date
JP2012191554A true JP2012191554A (en) 2012-10-04
JP5580766B2 JP5580766B2 (en) 2014-08-27

Family

ID=47084210

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011055247A Active JP5580766B2 (en) 2011-03-14 2011-03-14 Server apparatus, packet transmission system, packet transmission method and program

Country Status (1)

Country Link
JP (1) JP5580766B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014136864A1 (en) * 2013-03-07 2014-09-12 日本電気株式会社 Packet rewriting apparatus, control apparatus, communication system, packet transmitting method and program
JP2014529926A (en) * 2011-08-04 2014-11-13 ミドクラ エスエーアールエル System and method for implementing and managing virtual networks
CN114205360A (en) * 2021-12-08 2022-03-18 京东科技信息技术有限公司 Data transmission method, device and system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010114715A1 (en) * 2009-03-30 2010-10-07 Amazon Technologies, Inc. Providing logical networking functionality for managed computer networks

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010114715A1 (en) * 2009-03-30 2010-10-07 Amazon Technologies, Inc. Providing logical networking functionality for managed computer networks

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
CSNG201000718012; 西原 基夫: 'OpenFlow技術の概要' 情報処理 第51巻 第8号, 20100815, pp.1023〜1029, 一般社団法人情報処理学会 *
CSNG201100192046; 小出 俊夫: 'Source Flowを用いた大規模OpenFlowネットワークに関する一検討' 電子情報通信学会技術研究報告 Vol.110 No.448, 20110224, pp.335〜340, 社団法人電子情報通信学会 *
JPN6013060511; 西原 基夫: 'OpenFlow技術の概要' 情報処理 第51巻 第8号, 20100815, pp.1023〜1029, 一般社団法人情報処理学会 *
JPN6013060512; 小出 俊夫: 'Source Flowを用いた大規模OpenFlowネットワークに関する一検討' 電子情報通信学会技術研究報告 Vol.110 No.448, 20110224, pp.335〜340, 社団法人電子情報通信学会 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014529926A (en) * 2011-08-04 2014-11-13 ミドクラ エスエーアールエル System and method for implementing and managing virtual networks
WO2014136864A1 (en) * 2013-03-07 2014-09-12 日本電気株式会社 Packet rewriting apparatus, control apparatus, communication system, packet transmitting method and program
JP5991424B2 (en) * 2013-03-07 2016-09-14 日本電気株式会社 Packet rewriting device, control device, communication system, packet transmission method and program
US10237377B2 (en) 2013-03-07 2019-03-19 Nec Corporation Packet rewriting apparatus, control apparatus, communication system, packet transmission method and program
CN114205360A (en) * 2021-12-08 2022-03-18 京东科技信息技术有限公司 Data transmission method, device and system
CN114205360B (en) * 2021-12-08 2024-04-16 京东科技信息技术有限公司 Data transmission method, device and system

Also Published As

Publication number Publication date
JP5580766B2 (en) 2014-08-27

Similar Documents

Publication Publication Date Title
CA3106407C (en) Multi-cloud connectivity using srv6 and bgp
EP3466037B1 (en) Subnet stretching via layer three communications
EP2982097B1 (en) Method and apparatus for exchanging ip packets among network layer 2 peers
CN109937401B (en) Live migration of load-balancing virtual machines via traffic bypass
JP6538986B2 (en) Virtual machine packet control
CN111478852B (en) Route advertisement for managed gateways
US10038629B2 (en) Virtual machine migration using label based underlay network forwarding
US8953441B2 (en) Re-routing network traffic after link failure
CN106576075B (en) Method and system for operating a logical network on a network virtualization infrastructure
US9936014B2 (en) Method for virtual machine migration in computer networks
US10263808B2 (en) Deployment of virtual extensible local area network
US9923800B2 (en) Method for reachability management in computer networks
EP2687983A1 (en) Hierarchical system for managing a plurality of virtual machines, method and computer program
JP2018536345A (en) Firewall cluster
US20190215191A1 (en) Deployment Of Virtual Extensible Local Area Network
JP5580766B2 (en) Server apparatus, packet transmission system, packet transmission method and program
WO2014142278A1 (en) Control device, communication system, communication method, and program
JP6471066B2 (en) Network management apparatus and address setting method
JP6467906B2 (en) Information processing system, information processing method, information processing program, and information processing apparatus
Desmouceaux et al. Zero-loss virtual machine migration with IPv6 segment routing
Shpiner et al. SAL: Scaling data centers using smart address learning
JP6510217B2 (en) Network control system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130328

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131210

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140127

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140617

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140711

R150 Certificate of patent or registration of utility model

Ref document number: 5580766

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350