JP2017229027A - Switch apparatus and relay system - Google Patents

Switch apparatus and relay system Download PDF

Info

Publication number
JP2017229027A
JP2017229027A JP2016125821A JP2016125821A JP2017229027A JP 2017229027 A JP2017229027 A JP 2017229027A JP 2016125821 A JP2016125821 A JP 2016125821A JP 2016125821 A JP2016125821 A JP 2016125821A JP 2017229027 A JP2017229027 A JP 2017229027A
Authority
JP
Japan
Prior art keywords
frame
port
fdb
external
identifier
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
JP2016125821A
Other languages
Japanese (ja)
Other versions
JP6629681B2 (en
Inventor
明良 藤木
Akira Fujiki
明良 藤木
明弘 関口
Akihiro Sekiguchi
明弘 関口
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.)
Apresia Systems Ltd
Original Assignee
Apresia Systems Ltd
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 Apresia Systems Ltd filed Critical Apresia Systems Ltd
Priority to JP2016125821A priority Critical patent/JP6629681B2/en
Publication of JP2017229027A publication Critical patent/JP2017229027A/en
Application granted granted Critical
Publication of JP6629681B2 publication Critical patent/JP6629681B2/en
Expired - Fee Related 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 provide a switch apparatus and relay system, capable of implementing acceleration of communication in a VXLAN.SOLUTION: A relay processing unit, when receiving an encapsulated frame, performs learning of correspondence between a reception port ID and a transmission source's external MAC address, external IP address, and internal MAC address, in a FDB. Meanwhile, the relay processing unit, when receiving a non-encapsulated frame FR13, searches the FDB using an internal MAC address "MA31" of a destination as a search key; and when acquiring a port identifier {Pu[1]} of a high-order port, transmits the frame toward the high-order port via an encapsulation execution unit 18. The encapsulation execution unit 18 generates an encapsulated frame FRC13a including the destination's external MAC address "MAa" and external IP address "IPA2" based on a FDB search result.SELECTED DRAWING: Figure 4B

Description

本発明は、スイッチ装置および中継システムに関し、例えば、VXLAN(Virtual eXtensible Local Area Network)が適用されるスイッチ装置および中継システムに関する。   The present invention relates to a switch device and a relay system, for example, a switch device and a relay system to which a VXLAN (Virtual eXtensible Local Area Network) is applied.

例えば、特許文献1には、VXLANでカプセル化を行う際に、CPUにソフトテーブルを参照させることで、カプセル化に必要な宛先MACアドレスや宛先IPアドレス等を取得する方式が示される。また、この宛先MACアドレスや宛先IPアドレスは、予め管理用ポートを介して外部装置から設定される。   For example, Patent Document 1 discloses a method of acquiring a destination MAC address, a destination IP address, and the like necessary for encapsulation by causing a CPU to refer to a software table when performing encapsulation with VXLAN. The destination MAC address and the destination IP address are set in advance from an external device via the management port.

特開2016−19052号公報JP-A-2006-19052

近年、データセンター等では、仮想マシンおよび仮想ネットワークを用いた仮想化環境の適用が進んでいる。このような仮想化環境では、例えば、互いに離れた拠点に配置され、OSI参照モデルのレイヤ3(L3)のネットワークを介して接続された仮想マシン間で、仮想的にレイヤ2(L2)を用いた通信を実現するための仮想ネットワークを構築することが求められる。このようなオーバーレイ方式の仮想ネットワークを構築する技術の一つとして、VXLANが知られている。   In recent years, application of virtual environments using virtual machines and virtual networks has been advanced in data centers and the like. In such a virtual environment, for example, layer 2 (L2) is virtually used between virtual machines that are arranged at remote locations and connected via a layer 3 (L3) network of the OSI reference model. It is required to construct a virtual network for realizing the existing communication. VXLAN is known as one technique for constructing such an overlay virtual network.

VXLANは、L2フレームをカプセル化することで、L3ネットワーク上に論理的なL2ネットワークを構築するトンネリングプロトコルである。具体的には、各仮想マシンは、VTEP(VXLAN Tunnel End Point)と呼ばれる装置に適宜属するように構成される。異なるVTEPに属する仮想マシン間での通信は、対応するVTEP間での通信を介して行われる。この際に、VTEPは、自身に属する仮想マシンからのL2フレームをUDP(User Datagram Protocol)ヘッダ等を含む外部ヘッダでカプセル化し、当該カプセル化されたフレームを、宛先の仮想マシンが属する所定のVTEP宛てに送信する。   VXLAN is a tunneling protocol that constructs a logical L2 network on an L3 network by encapsulating L2 frames. Specifically, each virtual machine is configured so as to appropriately belong to a device called VTEP (VXLAN Tunnel End Point). Communication between virtual machines belonging to different VTEPs is performed via communication between corresponding VTEPs. At this time, the VTEP encapsulates the L2 frame from the virtual machine belonging to itself with an external header including a UDP (User Datagram Protocol) header and the like, and the encapsulated frame is a predetermined VTEP to which the destination virtual machine belongs. Send to address.

ここで、VTEPは、受信したL2フレームをカプセル化し、所定のVTEP宛てに送信する際に、L3中継を行うため、通常、ルーティングテーブルやARP(Address Resolution Protocol)テーブル等の各種テーブルを順次参照する必要がある。このため、VTEPは、このような処理をソフトウェア処理で実行する場合が多い。その結果、通信の高速化が図れない恐れがある。   Here, since the VTEP encapsulates the received L2 frame and performs L3 relay when transmitting to a predetermined VTEP, normally, various tables such as a routing table and an ARP (Address Resolution Protocol) table are sequentially referred to. There is a need. For this reason, VTEP often executes such processing by software processing. As a result, communication speed may not be increased.

本発明は、このようなことに鑑みてなされたものであり、その目的の一つは、通信の高速化を実現可能なスイッチ装置および中継システムを提供することにある。   The present invention has been made in view of such circumstances, and one of its purposes is to provide a switch device and a relay system capable of realizing high-speed communication.

本発明の前記並びにその他の目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。   The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.

本願において開示される発明のうち、代表的な実施の形態の概要を簡単に説明すれば、次のとおりである。   Of the inventions disclosed in the present application, the outline of a typical embodiment will be briefly described as follows.

本実施の形態によるスイッチ装置は、VXLANに基づきフレームを中継し、下位ポートと、カプセル化実行部と、上位ポートと、FDB(Forwarding DataBase)と、中継処理部とを有する。下位ポートは、非カプセル化フレームの通信を行う。カプセル化実行部は、非カプセル化フレームを外部ヘッダでカプセル化することでカプセル化フレームを生成する。上位ポートは、カプセル化フレームの通信を行う。FDBは、外部MACアドレスと、外部IPアドレスと、内部MACアドレスと、ポート識別子との対応関係を保持する。中継処理部は、上位ポートでカプセル化フレームを受信した場合に、そのポート識別子と、外部ヘッダに含まれる送信元の外部MACアドレスおよび送信元の外部IPアドレスと、当該フレーム内の非カプセル化フレームの領域に含まれる送信元の内部MACアドレスとの対応関係をFDBに学習する。また、中継処理部は、下位ポートで非カプセル化フレームを受信した場合に、当該フレームに含まれる宛先の内部MACアドレスを検索キーとしてFDBを検索する。そして、中継処理部は、当該検索結果として上位ポートのポート識別子、外部MACアドレスおよび外部IPアドレスを取得した際には、非カプセル化フレームをカプセル化実行部を介して当該上位ポートに向けて送信する。カプセル化実行部は、FDBの検索結果に基づく宛先の外部MACアドレスおよび宛先の外部IPアドレスを含んだカプセル化フレームを生成する。   The switch device according to the present embodiment relays a frame based on VXLAN, and includes a lower port, an encapsulation execution unit, an upper port, an FDB (Forwarding DataBase), and a relay processing unit. The lower port communicates an unencapsulated frame. The encapsulation execution unit generates an encapsulated frame by encapsulating the non-encapsulated frame with an external header. The upper port communicates encapsulated frames. The FDB holds a correspondence relationship between an external MAC address, an external IP address, an internal MAC address, and a port identifier. When the encapsulated frame is received by the upper port, the relay processing unit receives the port identifier, the source external MAC address and the source external IP address included in the external header, and the non-encapsulated frame in the frame. The FDB learns the correspondence with the internal MAC address of the transmission source included in the area. When the relay processing unit receives an unencapsulated frame at a lower port, the relay processing unit searches the FDB using the internal MAC address of the destination included in the frame as a search key. When the relay processing unit acquires the port identifier, external MAC address, and external IP address of the upper port as the search result, the relay processing unit transmits the unencapsulated frame to the upper port via the encapsulation execution unit. To do. The encapsulation execution unit generates an encapsulated frame including the destination external MAC address and the destination external IP address based on the FDB search result.

本願において開示される発明のうち、代表的な実施の形態によって得られる効果を簡単に説明すると、スイッチ装置および中継システムにおいて、通信の高速化を実現できる。   The effects obtained by the representative embodiments of the invention disclosed in the present application will be briefly described. In the switch device and the relay system, the communication speed can be increased.

本発明の一実施の形態による中継システムの構成例および動作例を示す概略図である。It is the schematic which shows the structural example and operation example of a relay system by one embodiment of this invention. 図1の中継システムにおいて、各フレームの構造例を示す概略図である。FIG. 2 is a schematic diagram illustrating a structure example of each frame in the relay system of FIG. 1. 図1の中継システムにおいて、スイッチ装置の主要部の構成例およびカプセル化フレーム受信時のFDB学習動作の一例を示す概略図である。In the relay system of FIG. 1, it is the schematic which shows the example of a structure of the principal part of a switch apparatus, and an example of the FDB learning operation | movement at the time of encapsulated frame reception. 図1の中継システムにおいて、スイッチ装置の主要部の構成例およびカプセル化フレーム受信時のFDB検索動作の一例を示す概略図である。In the relay system of FIG. 1, it is the schematic which shows the example of a structure of the principal part of a switch apparatus, and an example of the FDB search operation at the time of encapsulated frame reception. 図1の中継システムにおいて、スイッチ装置の主要部の構成例および非カプセル化フレーム受信時のFDB学習動作の一例を示す概略図である。In the relay system of FIG. 1, it is the schematic which shows the example of a structure of the principal part of a switch apparatus, and an example of the FDB learning operation | movement at the time of receiving an unencapsulated frame. 図1の中継システムにおいて、スイッチ装置の主要部の構成例および非カプセル化フレーム受信時のFDB検索動作の一例を示す概略図である。In the relay system of FIG. 1, it is the schematic which shows the example of a structure of the principal part of a switch apparatus, and an example of the FDB search operation | movement at the time of receiving an unencapsulated frame. 図1の中継システムにおいて、スイッチ装置の構成例を示す概略図である。FIG. 2 is a schematic diagram illustrating a configuration example of a switch device in the relay system of FIG. 1. (a)は、図5におけるVPNテーブル[1]の構造例を示す概略図であり、(b)は、図5におけるVPNテーブル[2]の構造例を示す概略図である。(A) is the schematic which shows the structural example of VPN table [1] in FIG. 5, (b) is the schematic which shows the structural example of VPN table [2] in FIG. 図5における終端判定部の動作例を示すフロー図である。It is a flowchart which shows the operation example of the termination | terminus determination part in FIG. 図5のスイッチ装置における代表的な動作例を示す説明図である。It is explanatory drawing which shows the typical operation example in the switch apparatus of FIG. 図5のスイッチ装置における代表的な動作例を示す説明図である。It is explanatory drawing which shows the typical operation example in the switch apparatus of FIG. 図5のスイッチ装置における代表的な動作例を示す説明図である。It is explanatory drawing which shows the typical operation example in the switch apparatus of FIG.

以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらは互いに無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明等の関係にある。また、以下の実施の形態において、要素の数等(個数、数値、量、範囲等を含む)に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でも良い。   In the following embodiment, when it is necessary for the sake of convenience, the description will be divided into a plurality of sections or embodiments. However, unless otherwise specified, they are not irrelevant, and one is the other. Some or all of the modifications, details, supplementary explanations, and the like are related. Further, in the following embodiments, when referring to the number of elements (including the number, numerical value, quantity, range, etc.), especially when clearly indicated and when clearly limited to a specific number in principle, etc. Except, it is not limited to the specific number, and may be more or less than the specific number.

さらに、以下の実施の形態において、その構成要素(要素ステップ等も含む)は、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではないことは言うまでもない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数値および範囲についても同様である。   Further, in the following embodiments, the constituent elements (including element steps and the like) are not necessarily indispensable unless otherwise specified and apparently essential in principle. Needless to say. Similarly, in the following embodiments, when referring to the shapes, positional relationships, etc. of the components, etc., the shapes are substantially the same unless otherwise specified, or otherwise apparent in principle. And the like are included. The same applies to the above numerical values and ranges.

以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Note that components having the same function are denoted by the same reference symbols throughout the drawings for describing the embodiment, and the repetitive description thereof will be omitted.

《中継システムの構成》
図1は、本発明の一実施の形態による中継システムの構成例および動作例を示す概略図である。図1に示す中継システムは、L3ネットワークNW1と、L2ネットワークNW2a,NW2bと、L3ネットワークNW1とL2ネットワークNW2a,NW2bとの境界にそれぞれ配置されるスイッチ装置VTEP[1],VTEP[2]とを備える。L3ネットワークNW1は、IP(Internet Protocol)アドレスに基づきフレームを中継し、L2ネットワークNW2a,NW2bは、MAC(Media Access Control)アドレスに基づきフレームを中継する。
<< Relay system configuration >>
FIG. 1 is a schematic diagram illustrating a configuration example and an operation example of a relay system according to an embodiment of the present invention. The relay system shown in FIG. 1 includes an L3 network NW1, L2 networks NW2a and NW2b, and switch devices VTEP [1] and VTEP [2] arranged at the boundary between the L3 network NW1 and the L2 networks NW2a and NW2b, respectively. Prepare. The L3 network NW1 relays frames based on IP (Internet Protocol) addresses, and the L2 networks NW2a and NW2b relay frames based on MAC (Media Access Control) addresses.

L3ネットワークNW1は、ルータ装置(またはL3スイッチ)RTa,RTbを備える。L2ネットワークNW2aは、情報処理装置10a,10bを備え、L2ネットワークNW2bは、情報処理装置10cを備える。情報処理装置10a,10b,10cは、仮想マシンを構築可能な構成となっている。この例では、情報処理装置10aは、仮想マシンVM11,VM12,…を有し、情報処理装置10bは、仮想マシンVM21,VM22,…を有し、情報処理装置10cは、仮想マシンVM31,VM32,…を有する。   The L3 network NW1 includes router devices (or L3 switches) RTa and RTb. The L2 network NW2a includes information processing apparatuses 10a and 10b, and the L2 network NW2b includes an information processing apparatus 10c. The information processing apparatuses 10a, 10b, and 10c are configured to be able to construct a virtual machine. In this example, the information processing apparatus 10a includes virtual machines VM11, VM12,..., The information processing apparatus 10b includes virtual machines VM21, VM22,..., And the information processing apparatus 10c includes virtual machines VM31, VM32,. Has ...

スイッチ装置VTEP[1],VTEP[2]は、VXLANに基づくVTEPとして機能し、VXLANに基づきフレームを中継する。スイッチ装置VTEP[1],VTEP[2]のそれぞれは、上位ポートPu[1],Pu[2]と、下位ポートPd[1]〜Pd[n]とを備える。下位ポートPd[1]〜Pd[n]は、L2ネットワークに接続され、イーサネットフレーム(イーサネットは登録商標)となる非カプセル化フレームの通信を行う。上位ポートPu[1],Pu[2]は、L3ネットワークに接続され、VXLANフレームとなるカプセル化フレームの通信を行う。   The switch devices VTEP [1] and VTEP [2] function as VTEP based on VXLAN and relay frames based on VXLAN. Each of the switch devices VTEP [1] and VTEP [2] includes upper ports Pu [1] and Pu [2] and lower ports Pd [1] to Pd [n]. The lower ports Pd [1] to Pd [n] are connected to the L2 network and perform communication of an unencapsulated frame serving as an Ethernet frame (Ethernet is a registered trademark). The upper ports Pu [1] and Pu [2] are connected to the L3 network and perform communication of an encapsulated frame serving as a VXLAN frame.

この例では、スイッチ装置VTEP[1]の下位ポートPd[1],Pd[n]は、それぞれ、L2ネットワークNW2a内の情報処理装置10a,10bに接続され、上位ポートPu[1]は、L3ネットワークNW1内のルータ装置RTaに接続される。また、スイッチ装置VTEP[2]の下位ポートPd[1]は、L2ネットワークNW2b内の情報処理装置10cに接続され、上位ポートPu[1]は、L3ネットワークNW1内のルータ装置RTbに接続される。本明細書では、下位ポートPd[1]〜Pd[n]のそれぞれを代表して下位ポートPdと称し、上位ポートPu[1],Pu[2]のそれぞれを代表して上位ポートPuと称する。   In this example, the lower ports Pd [1] and Pd [n] of the switch device VTEP [1] are connected to the information processing devices 10a and 10b in the L2 network NW2a, respectively, and the upper port Pu [1] is L3 It is connected to the router device RTa in the network NW1. Further, the lower port Pd [1] of the switch device VTEP [2] is connected to the information processing device 10c in the L2 network NW2b, and the upper port Pu [1] is connected to the router device RTb in the L3 network NW1. . In this specification, each of the lower ports Pd [1] to Pd [n] is referred to as a lower port Pd, and each of the upper ports Pu [1] and Pu [2] is referred to as an upper port Pu. .

《中継システムの概略動作(前提)》
次に、図1の中継システムにおいて、前提となるフレーム中継動作について説明する。この例では、スイッチ装置VTEP[1],VTEP[2]のMACアドレスは、それぞれ、“MA1”,“MA2”であり、IPアドレスは、それぞれ“IPA1”,“IPA2”である。ルータ装置RTa,RTbのMACアドレスは、それぞれ、“MAa”,“MAb”であり、IPアドレスは、それぞれ“IPAa”,“IPAb”である。また、仮想マシンVM11,VM21,VM31のMACアドレスは、それぞれ、“MA11”,“MA21”,“MA31”である。
<< General operation of relay system (premise) >>
Next, a prerequisite frame relay operation in the relay system of FIG. 1 will be described. In this example, the MAC addresses of the switch devices VTEP [1] and VTEP [2] are “MA1” and “MA2”, respectively, and the IP addresses are “IPA1” and “IPA2”, respectively. The MAC addresses of the router devices RTa and RTb are “MAa” and “MAb”, respectively, and the IP addresses are “IPAa” and “IPAb”, respectively. The MAC addresses of the virtual machines VM11, VM21, and VM31 are “MA11”, “MA21”, and “MA31”, respectively.

このような状態で、まず、仮想マシンVM31が仮想マシンVM11を宛先として非カプセル化フレームFR31を送信し、その後に、仮想マシンVM11が仮想マシンVM31を宛先として非カプセル化フレームFR13を送信する場合を想定する。図2は、図1の中継システムにおいて、各フレームの構造例を示す概略図である。図2に示すように、カプセル化フレーム(VXLANフレーム)FRCは、非カプセル化フレーム(イーサネットフレーム)FRを外部ヘッダ12でカプセル化した構造となっている。   In this state, first, the virtual machine VM31 transmits the unencapsulated frame FR31 with the virtual machine VM11 as the destination, and then the virtual machine VM11 transmits the unencapsulated frame FR13 with the virtual machine VM31 as the destination. Suppose. FIG. 2 is a schematic diagram showing an example of the structure of each frame in the relay system of FIG. As shown in FIG. 2, the encapsulated frame (VXLAN frame) FRC has a structure in which an unencapsulated frame (Ethernet frame) FR is encapsulated with an external header 12.

非カプセル化フレームFRは、宛先の内部MACアドレスI_DMAC、送信元の内部MACアドレスI_SMAC、内部VLANタグI_VLANおよびペイロードを含む。内部VLANタグI_VLANは、例えば、12ビットのVLAN識別子VIDを含む。外部ヘッダ12は、宛先の外部MACアドレスO_DMAC、送信元の外部MACアドレスO_SMAC、外部VLANタグO_VLAN、宛先の外部IPアドレスO_DIP、送信元の外部IPアドレスO_SIP、UDPヘッダおよびVXLANヘッダを含む。外部VLANタグO_VLANは、例えば、12ビットのVLAN識別子VIDを含む。UDPヘッダは、送信元ポート番号SPNおよび宛先ポート番号DPNを含む。VXLANヘッダは、24ビットのVXLANネットワーク識別子VNIを含む。   The unencapsulated frame FR includes a destination internal MAC address I_DMAC, a source internal MAC address I_SMAC, an internal VLAN tag I_VLAN, and a payload. The internal VLAN tag I_VLAN includes, for example, a 12-bit VLAN identifier VID. The external header 12 includes a destination external MAC address O_DMAC, a source external MAC address O_SMAC, an external VLAN tag O_VLAN, a destination external IP address O_DIP, a source external IP address O_SIP, a UDP header, and a VXLAN header. The external VLAN tag O_VLAN includes, for example, a 12-bit VLAN identifier VID. The UDP header includes a source port number SPN and a destination port number DPN. The VXLAN header includes a 24-bit VXLAN network identifier VNI.

仮想マシンVM31から仮想マシンVM11に向けて送信される非カプセル化フレームFR31において、宛先の内部MACアドレスI_DMACは“MA11”であり、送信元の内部MACアドレスI_SMACは“MA31”であり、内部VLANタグI_VLANのVLAN識別子VIDは“V1”である。スイッチ装置VTEP[2]は、下位ポートPd[1]で非カプセル化フレームFR31を受信する。ここでは、スイッチ装置VTEP[2]は、宛先となる“MA11”がどのスイッチ装置(VTEP)に属しているかを知らないものとする。   In the unencapsulated frame FR31 transmitted from the virtual machine VM31 to the virtual machine VM11, the destination internal MAC address I_DMAC is “MA11”, the source internal MAC address I_SMAC is “MA31”, and the internal VLAN tag The VLAN identifier VID of I_VLAN is “V1”. The switching device VTEP [2] receives the unencapsulated frame FR31 at the lower port Pd [1]. Here, it is assumed that the switch device VTEP [2] does not know which switch device (VTEP) the destination “MA11” belongs to.

この場合、スイッチ装置VTEP[2]は、予めVXLANネットワーク識別子VNI毎に構築しておいたネットワークセグメントへ当該非カプセル化フレームFR31をマルチキャストで送信する。具体的には、スイッチ装置VTEP[2]は、予め、IPマルチキャストのプロトコルを用いて、L3ネットワークNW1内にVXLANネットワーク識別子VNI毎のネットワークセグメントを構築し、ネットワークセグメント毎に、マルチキャストIPアドレスと宛先ポートとを定めておく。   In this case, the switch device VTEP [2] transmits the unencapsulated frame FR31 by multicast to a network segment that is constructed in advance for each VXLAN network identifier VNI. Specifically, the switch device VTEP [2] constructs a network segment for each VXLAN network identifier VNI in the L3 network NW1 in advance using an IP multicast protocol, and sets a multicast IP address and a destination for each network segment. Define the port.

スイッチ装置VTEP[2]は、受信した非カプセル化フレームFR31をカプセル化することでカプセル化フレームFRC31aを生成し、当該カプセル化フレームFRC31aをマルチキャスト用の宛先ポート(ここでは上位ポートPu[1])へ中継する。カプセル化フレームFRC31aにおいて、宛先の外部MACアドレスO_DMACは、マルチキャストMACアドレスMCMAであり、送信元の外部MACアドレスO_SMACは、自身のMACアドレス“MA2”であり、外部VLANタグO_VLANのVLAN識別子VIDは、予め定めた“V10”である。   The switching device VTEP [2] generates an encapsulated frame FRC31a by encapsulating the received unencapsulated frame FR31, and the encapsulated frame FRC31a is used as a multicast destination port (here, upper port Pu [1]). Relay to. In the encapsulated frame FRC31a, the destination external MAC address O_DMAC is the multicast MAC address MCMA, the source external MAC address O_SMAC is its own MAC address “MA2”, and the VLAN identifier VID of the external VLAN tag O_VLAN is It is “V10” determined in advance.

また、宛先の外部IPアドレスO_DIPは、マルチキャストIPアドレスMCIPであり、送信元の外部IPアドレスO_SIPは、自身のIPアドレス“IPA2”である。なお、マルチキャストIPアドレスMCIPは、IPv4の場合、例えば“224.x.y.z”(x,y,zのそれぞれは0〜255の中のいずれかの値)等であり、マルチキャストMACアドレスMCMAは、当該マルチキャストIPアドレスMCIPに規定値を組み合わせた値となる。   The destination external IP address O_DIP is the multicast IP address MCIP, and the source external IP address O_SIP is its own IP address “IPA2”. In the case of IPv4, the multicast IP address MCIP is, for example, “224.x.y.z” (where each of x, y, and z is one of 0 to 255), and the multicast MAC address MCMA. Is a value obtained by combining the multicast IP address MCIP with a specified value.

UDPヘッダ内の送信元ポート番号SPNは、例えば、フレーム内の各種情報をハッシュ演算すること等で定められ、宛先ポート番号DPNは、例えば、VXLANの規格で定められる値に設定される。VXLANヘッダ内のVXLANネットワーク識別子VNIは、予め、送信元の仮想マシンVM31に対して割り当てた値となる“VN10”である。   The source port number SPN in the UDP header is determined by, for example, performing a hash operation on various information in the frame, and the destination port number DPN is set to a value determined by, for example, the VXLAN standard. The VXLAN network identifier VNI in the VXLAN header is “VN10” that is a value assigned in advance to the virtual machine VM31 of the transmission source.

ルータ装置RTbは、当該カプセル化フレームFRC31aを受信し、IPマルチキャストのプロトコルを用いて予め生成したマルチキャストテーブル(例えば、マルチキャストIPアドレスと宛先ポートとの対応関係)に基づいて、当該フレームをルータ装置RTaに向けて中継する。その中継の過程で、カプセル化フレームの送信元の外部MACアドレスO_SMACは、ルータ装置を経由する毎に書き換えられる。   The router device RTb receives the encapsulated frame FRC31a, and based on the multicast table (for example, the correspondence relationship between the multicast IP address and the destination port) generated in advance using the IP multicast protocol, the router device RTb Relay towards In the relay process, the external MAC address O_SMAC of the source of the encapsulated frame is rewritten every time it passes through the router device.

ルータ装置RTaは、ルータ装置RTbからのカプセル化フレームを受信し、ルータ装置RTbの場合と同様にマルチキャストテーブルに基づく中継を行う。その結果、ルータ装置RTaは、カプセル化フレームFRC31bをスイッチ装置VTEP[1]へ送信する。カプセル化フレームFRC31bは、カプセル化フレームFRC31aと比較して、送信元の外部MACアドレスO_SMACがルータ装置RTaのMACアドレス“MAa”となっている点が異なっている。   The router device RTa receives the encapsulated frame from the router device RTb and relays based on the multicast table in the same manner as the router device RTb. As a result, the router device RTa transmits the encapsulated frame FRC31b to the switch device VTEP [1]. The encapsulated frame FRC31b is different from the encapsulated frame FRC31a in that the source external MAC address O_SMAC is the MAC address “MAa” of the router device RTa.

スイッチ装置VTEP[1]は、カプセル化フレームFRC31bを上位ポートPu[1]で受信する。ここでは、スイッチ装置VTEP[1]は、宛先の内部MACアドレスI_DMACである“MA11”が自身の下位ポートPd[1]の先に存在していることを予め知っているものとする。この場合、スイッチ装置VTEP[1]は、当該カプセル化フレームFRC31bから外部ヘッダ12を取り除くことで元の非カプセル化フレームFR31を生成し、それを下位ポートPd[1]へ中継する。また、スイッチ装置VTEP[1]は、カプセル化フレームFRC31bを受信することで、その送信元の内部MACアドレスI_SMACである“MA31”と、送信元の外部IPアドレスO_SIPである“IPA2”との対応関係をVXLAN用のテーブルに学習する。   The switching device VTEP [1] receives the encapsulated frame FRC31b at the upper port Pu [1]. Here, it is assumed that the switching device VTEP [1] knows in advance that “MA11”, which is the internal MAC address I_DMAC of the destination, exists ahead of its own lower port Pd [1]. In this case, the switching device VTEP [1] generates the original unencapsulated frame FR31 by removing the external header 12 from the encapsulated frame FRC31b and relays it to the lower port Pd [1]. In addition, the switch device VTEP [1] receives the encapsulated frame FRC31b, and thereby corresponds to “MA31” that is the source internal MAC address I_SMAC and “IPA2” that is the source external IP address O_SIP. The relationship is learned in the VXLAN table.

その後、仮想マシンVM11は、仮想マシンVM31を宛先として非カプセル化フレームFR13を送信する。当該非カプセル化フレームFR13において、宛先の内部MACアドレスI_DMACは“MA31”であり、送信元の内部MACアドレスI_SMACは“MA11”であり、内部VLANタグI_VLANのVLAN識別子VIDは“V1”である。スイッチ装置VTEP[1]は、下位ポートPd[1]で非カプセル化フレームFR13を受信する。ここで、スイッチ装置VTEP[1]は、前述したVXLAN用のテーブルに基づき、宛先となる“MA31”がIPアドレス“IPA2”を持つスイッチ装置VTEP[2]に属していることを知っている。   Thereafter, the virtual machine VM11 transmits an unencapsulated frame FR13 with the virtual machine VM31 as a destination. In the unencapsulated frame FR13, the destination internal MAC address I_DMAC is “MA31”, the source internal MAC address I_SMAC is “MA11”, and the VLAN identifier VID of the internal VLAN tag I_VLAN is “V1”. The switching device VTEP [1] receives the unencapsulated frame FR13 at the lower port Pd [1]. Here, the switch device VTEP [1] knows that the destination “MA31” belongs to the switch device VTEP [2] having the IP address “IPA2” based on the VXLAN table described above.

この場合、スイッチ装置VTEP[1]は、受信した非カプセル化フレームFR13をカプセル化することでカプセル化フレームFRC13aを生成し、当該カプセル化フレームFRC13aを、上位ポートPu[1]からスイッチ装置VTEP[2]に向けてユニキャストで中継する。カプセル化フレームFRC13aにおいて、宛先の外部MACアドレスO_DMACは、ルータ装置RTaのMACアドレス“MAa”であり、送信元の外部MACアドレスO_SMACは、自身のMACアドレス“MA1”であり、外部VLANタグO_VLANのVLAN識別子VIDは、予め定めた“V10”である。   In this case, the switching device VTEP [1] generates the encapsulated frame FRC13a by encapsulating the received non-encapsulated frame FR13, and the encapsulated frame FRC13a is transmitted from the upper port Pu [1] to the switching device VTEP [1]. It relays by unicast toward 2]. In the encapsulated frame FRC13a, the destination external MAC address O_DMAC is the MAC address “MAa” of the router device RTa, the source external MAC address O_SMAC is its own MAC address “MA1”, and the external VLAN tag O_VLAN The VLAN identifier VID is “V10” determined in advance.

また、宛先の外部IPアドレスO_DIPは、スイッチ装置VTEP[2]のIPアドレス“IPA2”であり、送信元の外部IPアドレスO_SIPは、自身のIPアドレス“IPA1”である。UDPヘッダ内の送信元ポート番号SPNおよび宛先ポート番号DPNや、VXLANヘッダ内のVXLANネットワーク識別子VNI(ここでは“VN10”)は、前述したスイッチ装置VTEP[2]の場合と同様にして定められる。   The destination external IP address O_DIP is the IP address “IPA2” of the switch device VTEP [2], and the source external IP address O_SIP is its own IP address “IPA1”. The source port number SPN and destination port number DPN in the UDP header and the VXLAN network identifier VNI (here, “VN10”) in the VXLAN header are determined in the same manner as in the case of the switch device VTEP [2] described above.

ここで、スイッチ装置VTEP[1]は、当該カプセル化フレームFRC13aを生成する際に、具体的には、例えば、次のような処理を行う。まず、スイッチ装置VTEP[1]は、VXLAN用のテーブルに基づき、宛先の外部IPアドレスO_DIP“IPA2”を定める。次いで、スイッチ装置VTEP[1]は、ルーティングテーブルに基づき、当該“IPA2”にルーティングするためのネクストホップとなるルータ装置(ここではRTa)のIPアドレス“IPAa”を取得する。続いて、スイッチ装置VTEP[1]は、ARPテーブルに基づき、IPアドレス“IPAa”に対応するMACアドレス“MAa”および宛先ポート(ここでは上位ポートPu[1])を取得し、当該取得したMACアドレス“MAa”を宛先の外部MACアドレスO_DMACに定める。   Here, when the switch device VTEP [1] generates the encapsulated frame FRC 13a, specifically, for example, the following processing is performed. First, the switch device VTEP [1] determines a destination external IP address O_DIP “IPA2” based on the VXLAN table. Next, the switch device VTEP [1] acquires the IP address “IPAa” of the router device (RTa in this case) serving as the next hop for routing to the “IPA2” based on the routing table. Subsequently, the switching device VTEP [1] acquires the MAC address “MAa” and the destination port (here, the upper port Pu [1]) corresponding to the IP address “IPAa” based on the ARP table, and the acquired MAC The address “MAa” is determined as the destination external MAC address O_DMAC.

スイッチ装置VTEP[1]から送信されたカプセル化フレームFRC13aは、ルータ装置RTa、ルータ装置RTbを順に介してスイッチ装置VTEP[2]へ中継される。この際に、ルータ装置RTa,RTbは、宛先の外部IPアドレスO_DIP“IPA2”を検索キーとする通常のルーティング処理を実行する。スイッチ装置VTEP[2]は、前述したスイッチ装置VTEP[1]の場合と同様に、上位ポートPu[1]でルータ装置RTbからのカプセル化フレームを受信し、元の非カプセル化フレームFR13を生成し、それを下位ポートPd[1]へ中継する。また、スイッチ装置VTEP[2]は、VXLAN用のテーブルの学習も行う。   The encapsulated frame FRC 13a transmitted from the switch device VTEP [1] is relayed to the switch device VTEP [2] via the router device RTa and the router device RTb in this order. At this time, the router devices RTa and RTb execute normal routing processing using the destination external IP address O_DIP “IPA2” as a search key. The switch device VTEP [2] receives the encapsulated frame from the router device RTb at the higher port Pu [1] as in the case of the switch device VTEP [1] described above, and generates the original unencapsulated frame FR13. And relays it to the lower port Pd [1]. Further, the switch device VTEP [2] also learns a table for VXLAN.

以上のように、VXLANでは、通常、VTEPとなるスイッチ装置(この例ではVTEP[1])は、カプセル化フレーム(FRC13a)を生成する際に、各種テーブル(VXLAN用のテーブル、ルーティングテーブル、ARPテーブル)を順次参照する必要がある。このため、VTEPとなるスイッチ装置は、このような処理をソフトウェア処理で実行する場合が多い。その結果、カプセル化フレームの生成に時間を要し、通信の高速化が図れない恐れがある。   As described above, in VXLAN, a switch device (VTEP [1] in this example) that is normally a VTEP generates various tables (VXLAN table, routing table, ARP) when generating an encapsulated frame (FRC13a). Table) must be referenced sequentially. For this reason, the switch device serving as the VTEP often executes such processing by software processing. As a result, it takes time to generate the encapsulated frame, and there is a possibility that communication speed cannot be increased.

《スイッチ装置の主要部の概略(本実施の形態)》
図3Aは、図1の中継システムにおいて、スイッチ装置の主要部の構成例およびカプセル化フレーム受信時のFDB学習動作の一例を示す概略図である。図3Bは、図1の中継システムにおいて、スイッチ装置の主要部の構成例およびカプセル化フレーム受信時のFDB検索動作の一例を示す概略図である。図4Aは、図1の中継システムにおいて、スイッチ装置の主要部の構成例および非カプセル化フレーム受信時のFDB学習動作の一例を示す概略図である。図4Bは、図1の中継システムにおいて、スイッチ装置の主要部の構成例および非カプセル化フレーム受信時のFDB検索動作の一例を示す概略図である。図3A、図3B、図4Aおよび図4Bには、図1のスイッチ装置VTEP[1]を例として、主要部の構成例が示される。
<< Outline of main parts of switch device (this embodiment) >>
FIG. 3A is a schematic diagram illustrating a configuration example of a main part of the switch device and an example of an FDB learning operation when receiving an encapsulated frame in the relay system of FIG. FIG. 3B is a schematic diagram illustrating a configuration example of a main part of the switch device and an example of an FDB search operation when an encapsulated frame is received in the relay system of FIG. FIG. 4A is a schematic diagram illustrating a configuration example of a main part of the switch device and an example of an FDB learning operation when a non-encapsulated frame is received in the relay system of FIG. FIG. 4B is a schematic diagram illustrating a configuration example of a main part of the switch device and an example of an FDB search operation when an unencapsulated frame is received in the relay system of FIG. 3A, FIG. 3B, FIG. 4A, and FIG. 4B show configuration examples of main parts, taking the switch device VTEP [1] of FIG. 1 as an example.

図3A、図3B、図4Aおよび図4Bに示すスイッチ装置VTEP[1]は、FDB(Forwarding DataBase)と、VPNテーブル21と、カプセル化実行部18と、デカプセル化実行部19とを備える。VPNテーブル21は、概略的には、非カプセル化フレームFRに含まれるVLAN識別子VIDと、カプセル化フレームFRCの外部ヘッダ12に含まれるVXLANネットワーク識別子VNIとを内部VLAN識別子IVIDを介して対応付けるテーブルである。内部VLAN識別子IVIDは、12ビットのVLAN識別子VIDよりも多いビット数(例えば15ビット等)を備える。   The switch apparatus VTEP [1] shown in FIGS. 3A, 3B, 4A, and 4B includes an FDB (Forwarding DataBase), a VPN table 21, an encapsulation execution unit 18, and a decapsulation execution unit 19. The VPN table 21 is generally a table that associates the VLAN identifier VID included in the unencapsulated frame FR with the VXLAN network identifier VNI included in the external header 12 of the encapsulated frame FRC via the internal VLAN identifier IVID. is there. The internal VLAN identifier IVID has a larger number of bits (for example, 15 bits) than the 12-bit VLAN identifier VID.

カプセル化実行部18は、受信した非カプセル化フレームFRの宛先ポートが上位ポートPuである場合に、非カプセル化フレームFRを外部ヘッダ12でカプセル化することでカプセル化フレームFRCを生成する。デカプセル化実行部19は、受信したカプセル化フレームFRCの宛先ポートが下位ポートPdである場合に、受信したカプセル化フレームFRCから外部ヘッダ12を取り除くことで非カプセル化フレームFRを生成する。   The encapsulation execution unit 18 generates an encapsulated frame FRC by encapsulating the unencapsulated frame FR with the external header 12 when the destination port of the received unencapsulated frame FR is the upper port Pu. When the destination port of the received encapsulated frame FRC is the lower port Pd, the decapsulation executing unit 19 generates an unencapsulated frame FR by removing the external header 12 from the received encapsulated frame FRC.

図3A、図3B、図4Aおよび図4BのFDBは、外部MACアドレスO_MACと、外部IPアドレスO_IPと、内部MACアドレスI_MACと、内部VLAN識別子IVIDと、ポート識別子(ポートID)との対応関係を保持する。まず、FDBの学習動作について説明する。   The FDBs of FIGS. 3A, 3B, 4A, and 4B show the correspondence between the external MAC address O_MAC, the external IP address O_IP, the internal MAC address I_MAC, the internal VLAN identifier IVID, and the port identifier (port ID). Hold. First, an FDB learning operation will be described.

図3Aおよび図4AのFDBにおいて、スイッチ装置VTEP[1]は、例えば、仮想マシンVM11,VM21からの非カプセル化フレームを受信することで、No.1およびNo.2のエントリを学習する。No.1のエントリは、内部MACアドレスI_MAC“MA21”と、内部VLAN識別子IVID“IV1”と、ポート識別子{Pd[n]}との対応関係を保持し、No.2のエントリは、内部MACアドレスI_MAC“MA11”と、内部VLAN識別子IVID“IV1”と、ポート識別子{Pd[1]}との対応関係を保持する。本明細書では、{Pd[n]}は、下位ポートPd[n]の識別子(ID)を表し、同様にして、例えば、{AA}は“AA”の識別子を表すものとする。   In the FDB of FIG. 3A and FIG. 4A, the switching device VTEP [1] receives the unencapsulated frame from the virtual machines VM11 and VM21, for example. 1 and no. 2 entries are learned. No. 1 holds the correspondence relationship between the internal MAC address I_MAC “MA21”, the internal VLAN identifier IVID “IV1”, and the port identifier {Pd [n]}. The entry of 2 holds the correspondence relationship between the internal MAC address I_MAC “MA11”, the internal VLAN identifier IVID “IV1”, and the port identifier {Pd [1]}. In this specification, {Pd [n]} represents an identifier (ID) of the lower port Pd [n], and similarly, for example, {AA} represents an identifier of “AA”.

具体例として、図4Aに示されるように、スイッチ装置VTEP[1]が、仮想マシンVM11からの非カプセル化フレームFR13を下位ポートPd[1]で受信した場合を想定する。この場合、スイッチ装置VTEP[1]は、まず、VPNテーブル21に基づいて、非カプセル化フレームFR13のVLAN識別子“V1”を内部VLAN識別子“IV1”に変換する。そして、スイッチ装置VTEP[1]は、非カプセル化フレームFR13の送信元の内部MACアドレス“MA11”および内部VLAN識別子“IV1”をポート識別子{Pd[1]}に対応付けてFDB(ここではNo.2のエントリ)に学習する。   As a specific example, as illustrated in FIG. 4A, it is assumed that the switching device VTEP [1] receives the unencapsulated frame FR13 from the virtual machine VM11 at the lower port Pd [1]. In this case, the switching device VTEP [1] first converts the VLAN identifier “V1” of the unencapsulated frame FR13 into the internal VLAN identifier “IV1” based on the VPN table 21. Then, the switching device VTEP [1] associates the internal MAC address “MA11” and the internal VLAN identifier “IV1” of the transmission source of the unencapsulated frame FR13 with the port identifier {Pd [1]} to create the FDB (No in this case). .2 entry).

これと同様にして、スイッチ装置VTEP[1]は、FDBのNo.1のエントリも学習する。なお、スイッチ装置VTEP[1]は、FDBの学習を行う際には、内部MACアドレスI_MACおよび内部VLAN識別子IVIDを学習キーとして、ヒットしたエントリの上書きや、エージングタイマ(図示せず)の更新等を行う。   In the same manner, the switching device VTEP [1] has the FDB No. 1 entry is also learned. When the switching device VTEP [1] performs FDB learning, it uses the internal MAC address I_MAC and the internal VLAN identifier IVID as a learning key to overwrite a hit entry, update an aging timer (not shown), or the like. I do.

また、スイッチ装置VTEP[1]は、図1に示したように、上位ポートPu[1]でカプセル化フレームFRC31bを受信した場合に、図3Aおよび図4AのFDBにおけるNo.3のエントリを学習する。具体的には、図3Aに示されるように、スイッチ装置VTEP[1]は、当該フレームを受信した上位ポートのポート識別子{Pu[1]}と、送信元の外部MACアドレス“MAa”および送信元の外部IPアドレス“IPA2”と、当該フレーム内の非カプセル化フレームの領域に含まれる送信元の内部MACアドレス“MA31”との対応関係をFDBに学習する。加えて、スイッチ装置VTEP[1]は、当該カプセル化フレームFRC31bのVXLANネットワーク識別子“VN10”をVPNテーブル21に基づいて内部VLAN識別子“IV1”に変換し、FDBのNo.3のエントリに、当該“IV1”を学習する。   Further, as shown in FIG. 1, when the encapsulated frame FRC31b is received by the upper port Pu [1], the switching device VTEP [1] receives the No. in the FDB of FIGS. 3A and 4A. 3 entries are learned. Specifically, as shown in FIG. 3A, the switching device VTEP [1], the port identifier {Pu [1]} of the higher-order port that received the frame, the source external MAC address “MAa”, and the transmission The FDB learns the correspondence between the original external IP address “IPA2” and the internal MAC address “MA31” of the transmission source included in the area of the unencapsulated frame in the frame. In addition, the switching device VTEP [1] converts the VXLAN network identifier “VN10” of the encapsulated frame FRC31b into the internal VLAN identifier “IV1” based on the VPN table 21, and the FDB No. In the third entry, the “IV1” is learned.

次に、FDBの検索動作について説明する。スイッチ装置VTEP[1]は、図1に示したように、上位ポートPu[1]でカプセル化フレームFRC31bを受信した場合に、図3Bに示されるように、当該フレームに含まれる宛先の内部MACアドレスMA11を検索キーとしてFDBを検索する。スイッチ装置VTEP[1]は、当該FDBの検索結果として下位ポートのポート識別子{Pd[1]}を取得した際には、当該フレームをデカプセル化実行部19を介して当該下位ポートPd[1]に向けて送信する。この際に、デカプセル化実行部19は、カプセル化フレームFRC31bから外部ヘッダ12を削除することで、非カプセル化フレームFR31を生成する。   Next, the FDB search operation will be described. When the switching device VTEP [1] receives the encapsulated frame FRC31b at the upper port Pu [1] as shown in FIG. 1, the internal MAC of the destination included in the frame is received as shown in FIG. 3B. The FDB is searched using the address MA11 as a search key. When the switching device VTEP [1] obtains the port identifier {Pd [1]} of the lower port as the search result of the FDB, the lower port Pd [1] is sent to the lower frame Pd [1] via the decapsulation execution unit 19. Send to. At this time, the decapsulation executing unit 19 generates the unencapsulated frame FR31 by deleting the outer header 12 from the encapsulated frame FRC31b.

より詳細には、スイッチ装置VTEP[1]は、図3Bに示されるように、カプセル化フレームFRC31bを受信した場合に、当該フレームのVXLANネットワーク識別子“VN10”をVPNテーブル21に基づいて内部VLAN識別子“IV1”に変換する。そして、スイッチ装置VTEP[1]は、宛先の内部MACアドレスMA11に加えて当該内部VLAN識別子“IV1”を検索キーとしてFDBを検索する。   More specifically, when the switch device VTEP [1] receives the encapsulated frame FRC31b as shown in FIG. 3B, the VXLAN network identifier “VN10” of the frame is based on the internal VLAN identifier based on the VPN table 21. Convert to “IV1”. Then, the switching device VTEP [1] searches the FDB using the internal VLAN identifier “IV1” as a search key in addition to the internal MAC address MA11 of the destination.

また、スイッチ装置VTEP[1]は、図1に示したように、下位ポートPd[1]で非カプセル化フレームFR13を受信した場合に、図4Bに示されるように、当該フレームに含まれる宛先の内部MACアドレスMA31を検索キーとしてFDBを検索する。スイッチ装置VTEP[1]は、当該FDBの検索結果として上位ポートのポート識別子{Pu[1]}、外部MACアドレス“MAa”および外部IPアドレス“IPA2”を取得した際には、当該フレームをカプセル化実行部18を介して当該上位ポートPu[1]に向けて送信する。この際に、カプセル化実行部18は、当該FDBの検索結果に基づく宛先の外部MACアドレス“MAa”および宛先の外部IPアドレス“IPA2”を含んだカプセル化フレームFRC13aを生成する。   Further, when the switching device VTEP [1] receives the unencapsulated frame FR13 at the lower port Pd [1] as shown in FIG. 1, the destination included in the frame is shown in FIG. 4B. The FDB is searched by using the internal MAC address MA31 of as a search key. When the switch device VTEP [1] obtains the port identifier {Pu [1]} of the upper port, the external MAC address “MAa”, and the external IP address “IPA2” as the FDB search result, the switch device VTEP [1] encapsulates the frame. Then, the data is transmitted to the upper port Pu [1] via the conversion execution unit 18. At this time, the encapsulation execution unit 18 generates an encapsulated frame FRC 13a including the destination external MAC address “MAa” and the destination external IP address “IPA2” based on the FDB search result.

より詳細には、スイッチ装置VTEP[1]は、図4Bに示されるように、非カプセル化フレームFR13を受信した場合に、当該フレームのVLAN識別子“V1”をVPNテーブル21に基づいて内部VLAN識別子“IV1”に変換する。そして、スイッチ装置VTEP[1]は、宛先の内部MACアドレスMA31に加えて当該内部VLAN識別子“IV1”を検索キーとしてFDBを検索する。また、カプセル化実行部18は、VPNテーブル21に基づいて当該内部VLAN識別子“IV1”をVXLANネットワーク識別子“VN10”に変換することで、外部ヘッダ12のVXLANネットワーク識別子VNIを定める。   More specifically, when the switch device VTEP [1] receives the non-encapsulated frame FR13 as shown in FIG. 4B, the VLAN identifier “V1” of the frame is determined based on the VPN table 21 based on the internal VLAN identifier. Convert to “IV1”. Then, the switching device VTEP [1] searches the FDB using the internal VLAN identifier “IV1” as a search key in addition to the internal MAC address MA31 of the destination. Further, the encapsulation execution unit 18 converts the internal VLAN identifier “IV1” into the VXLAN network identifier “VN10” based on the VPN table 21, thereby determining the VXLAN network identifier VNI of the external header 12.

なお、ここでは、FDBの保持情報として内部VLAN識別子IVIDを用いたが、場合によっては、内部VLAN識別子IVIDの代わりに、VXLANネットワーク識別子VNI等を用いることも可能である。この場合、VPNテーブルは、非カプセル化フレームFRに含まれるVLAN識別子VIDと、カプセル化フレームFRCの外部ヘッダ12に含まれるVXLANネットワーク識別子VNIとの対応関係を保持すればよい。ただし、VXLANネットワーク識別子VNIを用いた場合、24ビットが必要であるため、CAM(Content Addressable Memory)等のハードウェアで構成されるFDBの記憶領域が多く消費される恐れがある。また、実用上、24ビットほどの識別空間は必要とされない場合がある。このような観点からは、12ビットよりも多く、24ビットよりも少ない内部VLAN識別子IVIDを用いることが有益となる。   Here, the internal VLAN identifier IVID is used as the information held in the FDB. However, in some cases, the VXLAN network identifier VNI or the like can be used instead of the internal VLAN identifier IVID. In this case, the VPN table may hold the correspondence between the VLAN identifier VID included in the unencapsulated frame FR and the VXLAN network identifier VNI included in the external header 12 of the encapsulated frame FRC. However, when the VXLAN network identifier VNI is used, since 24 bits are required, there is a possibility that a large FDB storage area composed of hardware such as CAM (Content Addressable Memory) is consumed. In practice, an identification space of about 24 bits may not be required. From this point of view, it is beneficial to use an internal VLAN identifier IVID that is greater than 12 bits and less than 24 bits.

《本実施の形態の主要な効果》
以上のように、図3A、図3B、図4Aおよび図4Bのスイッチ装置は、FDBの保持情報として、L2ネットワーク内での中継で通常使用される保持情報に加えて、外部MACアドレスO_MACおよび外部IPアドレスO_IPを含んでいる。このようなFDBの拡張により、前述したような各種テーブルを順次参照するソフトウェア処理ではなく、FDBによるハードウェア処理を用いてカプセル化フレームの生成に必要な各種情報を取得することができる。その結果、カプセル化フレームの生成に要する時間を短縮でき、通信の高速化が実現可能になる。
<Main effects of the present embodiment>
As described above, the switching devices of FIGS. 3A, 3B, 4A, and 4B use the external MAC address O_MAC and the external information as the FDB holding information in addition to the holding information normally used for relaying in the L2 network. IP address O_IP is included. By such an extension of the FDB, it is possible to acquire various pieces of information necessary for generating an encapsulated frame using hardware processing by the FDB, instead of software processing that sequentially refers to various tables as described above. As a result, the time required to generate the encapsulated frame can be shortened, and communication speed can be increased.

また、当該FDBは、勿論、L2ネットワーク内でイーサネットフレームを中継する際にも使用することができる。例えば、図1において、スイッチ装置VTEP[1]が仮想マシンVM11から仮想マシンVM21を宛先とするイーサネットフレームを受信した場合、図4BのNo.1のエントリに基づき、当該フレームを下位ポートPd[n]へ中継すればよい。   Further, the FDB can of course be used when relaying an Ethernet frame in the L2 network. For example, when the switch device VTEP [1] receives an Ethernet frame destined for the virtual machine VM21 from the virtual machine VM11 in FIG. The frame may be relayed to the lower port Pd [n] based on the entry of 1.

《スイッチ装置の構成》
図5は、図1の中継システムにおいて、スイッチ装置の構成例を示す概略図である。図6(a)は、図5におけるVPNテーブル[1]の構造例を示す概略図であり、図6(b)は、図5におけるVPNテーブル[2]の構造例を示す概略図である。図7は、図5における終端判定部の動作例を示すフロー図である。
<Configuration of switch device>
FIG. 5 is a schematic diagram illustrating a configuration example of the switch device in the relay system of FIG. 6A is a schematic diagram illustrating a structural example of the VPN table [1] in FIG. 5, and FIG. 6B is a schematic diagram illustrating a structural example of the VPN table [2] in FIG. FIG. 7 is a flowchart showing an operation example of the termination determination unit in FIG.

図5に示すスイッチ装置VTEPは、非カプセル化フレームFRの通信(送信または受信)を行う下位ポートPd[1]〜Pd[n]と、カプセル化フレームFRCの通信を行う上位ポートPu[1],Pu[2],…と、各種処理部および各種テーブルとを有する。以下、各種処理部および各種テーブルに関して説明する。   The switching device VTEP shown in FIG. 5 has lower ports Pd [1] to Pd [n] that communicate (transmit or receive) an unencapsulated frame FR and an upper port Pu [1] that communicates an encapsulated frame FRC. , Pu [2],..., Various processing units, and various tables. Hereinafter, various processing units and various tables will be described.

インタフェース部15は、受信バッファおよび送信バッファと、受信ポート識別子付加部25とを備え、下位ポートPdとの間で非カプセル化フレームの送信または受信を行い、上位ポートPuとの間でカプセル化フレームの送信または受信を行う。受信ポート識別子付加部25は、複数のポート(Pd[1]〜Pd[n],Pu[1],Pu[2],…)のいずれかでフレームを受信した場合に、当該フレームに受信したポートの識別子(受信ポート識別子RPIDと称する)を付加する。   The interface unit 15 includes a reception buffer and a transmission buffer, and a reception port identifier adding unit 25. The interface unit 15 transmits or receives an unencapsulated frame to and from the lower port Pd, and encapsulates the frame to the upper port Pu. Send or receive. When the reception port identifier adding unit 25 receives a frame at any of a plurality of ports (Pd [1] to Pd [n], Pu [1], Pu [2],...), The reception port identifier adding unit 25 receives the frame. A port identifier (referred to as a receiving port identifier RPID) is added.

テーブル処理部16は、VPNテーブル[1]21aに基づいて、受信したフレーム(非カプセル化フレームまたはカプセル化フレーム)に、内部VLAN識別子IVIDを割り当てる。VPNテーブル[1]21aの内容は、予めネットワーク管理者等によって定められる。VPNテーブル[1]21aは、図6(a)に示されるように、下位ポートPdの受信ポート識別子(受信ポートID)RPIDと内部VLANタグI_VLAN内のVLAN識別子VIDとの組合せを内部VLAN識別子IVIDに対応付けて保持する。また、VPNテーブル[1]21aは、上位ポートPuの受信ポート識別子RPIDと外部ヘッダ12内のVXLANネットワーク識別子VNIとの組合せを内部VLAN識別子IVIDに対応付けて保持する。これにより、VPNテーブル[1]21aは、内部VLANタグI_VLAN内のVLAN識別子VIDと、VXLANネットワーク識別子VNIとを内部VLAN識別子IVIDを介して対応付ける。   The table processing unit 16 assigns the internal VLAN identifier IVID to the received frame (unencapsulated frame or encapsulated frame) based on the VPN table [1] 21a. The contents of the VPN table [1] 21a are determined in advance by a network administrator or the like. As shown in FIG. 6A, the VPN table [1] 21a uses a combination of the reception port identifier (reception port ID) RPID of the lower port Pd and the VLAN identifier VID in the internal VLAN tag I_VLAN as the internal VLAN identifier IVID. Is stored in association with. The VPN table [1] 21a holds a combination of the reception port identifier RPID of the upper port Pu and the VXLAN network identifier VNI in the external header 12 in association with the internal VLAN identifier IVID. Accordingly, the VPN table [1] 21a associates the VLAN identifier VID in the internal VLAN tag I_VLAN with the VXLAN network identifier VNI via the internal VLAN identifier IVID.

中継処理部17は、FDB処理部26および終端判定部27を備える。FDB処理部26は、図3A、図3B、図4Aおよび図4Bで述べたように、FDBの学習および検索を行う。具体的には、FDBの学習に際し、FDB処理部26は、上位ポートPuでカプセル化フレームFRCを受信した場合、送信元の内部MACアドレスI_SMACおよび内部VLAN識別子IVIDを、受信ポート識別子RPID、送信元の外部MACアドレスO_SMACおよび送信元の外部IPアドレスO_SIPに対応付けてFDBに学習する。また、FDB処理部26は、下位ポートPdで非カプセル化フレームFRを受信した場合、送信元の内部MACアドレスI_SMACおよび内部VLAN識別子IVIDを、受信ポート識別子RPIDに対応付けてFDBに学習する。   The relay processing unit 17 includes an FDB processing unit 26 and a termination determination unit 27. The FDB processing unit 26 learns and searches the FDB as described in FIGS. 3A, 3B, 4A, and 4B. Specifically, when learning the FDB, when the FDB processing unit 26 receives the encapsulated frame FRC at the upper port Pu, the source internal MAC address I_SMAC and the internal VLAN identifier IVID, the reception port identifier RPID, and the transmission source The FDB learns in association with the external MAC address O_SMAC and the external IP address O_SIP of the transmission source. In addition, when the FDB processing unit 26 receives the unencapsulated frame FR at the lower port Pd, the FDB processing unit 26 learns the transmission source internal MAC address I_SMAC and the internal VLAN identifier IVID in association with the reception port identifier RPID in the FDB.

一方、FDBの検索に際し、FDB処理部26は、受信したフレームの宛先の内部MACアドレスI_DMACおよび内部VLAN識別子IVIDを検索キーとしてFDBを検索する。FDB処理部26は、FDBの検索結果として、上位ポートPuのポート識別子、外部MACアドレスO_MACおよび外部IPアドレスO_IPを取得した際には、受信したフレームに当該取得した各種情報を付加し、それをカプセル化実行部18へ送信する。   On the other hand, when searching for the FDB, the FDB processing unit 26 searches the FDB using the internal MAC address I_DMAC of the destination of the received frame and the internal VLAN identifier IVID as search keys. When acquiring the port identifier of the upper port Pu, the external MAC address O_MAC, and the external IP address O_IP as the FDB search result, the FDB processing unit 26 adds the acquired various information to the received frame, The data is transmitted to the encapsulation execution unit 18.

なお、FDBの検索結果として上位ポートPuのポート識別子が得られる場合とは、下位ポートPdで受信した非カプセル化フレームFRの宛先が上位ポートPuであった場合を意味する。すなわち、後述する終端判定部27の処理により、上位ポートPu間でのフレームのユニキャスト中継は実行されない。また、FDBの検索結果で取得したポート識別子は、宛先ポート識別子DPIDとなる。   The case where the port identifier of the upper port Pu is obtained as the FDB search result means that the destination of the non-encapsulated frame FR received by the lower port Pd is the upper port Pu. That is, the frame unicast relay between the upper ports Pu is not executed by the processing of the termination determination unit 27 described later. The port identifier acquired from the FDB search result is the destination port identifier DPID.

一方、FDB処理部26は、FDBの検索結果として、下位ポートPdのポート識別子を取得した際には、当該取得した情報(すなわち宛先ポート識別子DPID)を、受信したフレームに付加してデカプセル化実行部19または中継実行部20へ送信する。この際に、FDB処理部26は、受信したフレームが非カプセル化フレームFRの場合(例えば、受信ポート識別子RPIDが下位ポートPdの場合)には中継実行部20へ送信し、カプセル化フレームFRCの場合(例えば、受信ポート識別子RPIDが上位ポートPuの場合)にはデカプセル化実行部19へ送信する。   On the other hand, when the FDB processing unit 26 acquires the port identifier of the lower port Pd as the FDB search result, the FDB processing unit 26 adds the acquired information (that is, the destination port identifier DPID) to the received frame and executes decapsulation. To the unit 19 or the relay execution unit 20. At this time, when the received frame is an unencapsulated frame FR (for example, when the reception port identifier RPID is a lower port Pd), the FDB processing unit 26 transmits the frame to the relay execution unit 20 and transmits the encapsulated frame FRC. In the case (for example, when the reception port identifier RPID is the upper port Pu), the packet is transmitted to the decapsulation execution unit 19.

カプセル化実行部18は、非カプセル化フレームFRを外部ヘッダ12でカプセル化することでカプセル化フレームFRCを生成する。この際に、カプセル化実行部18は、外部ヘッダ12の宛先の外部MACアドレスO_DMACおよび宛先の外部IPアドレスO_DIPを、それぞれ、FDB処理部26によって付加された外部MACアドレスO_MACおよび外部IPアドレスO_IPに定める。また、カプセル化実行部18は、外部ヘッダ12の送信元の外部MACアドレスO_SMACおよび送信元の外部IPアドレスO_SIPを、それぞれ、自身のMACアドレスおよびIPアドレスに定める。   The encapsulation executing unit 18 generates an encapsulated frame FRC by encapsulating the non-encapsulated frame FR with the outer header 12. At this time, the encapsulation execution unit 18 sets the external MAC address O_DMAC of the destination of the external header 12 and the external IP address O_DIP of the destination to the external MAC address O_MAC and the external IP address O_IP added by the FDB processing unit 26, respectively. Determine. In addition, the encapsulation execution unit 18 determines the source external MAC address O_SMAC and the source external IP address O_SIP of the external header 12 as its own MAC address and IP address, respectively.

さらに、カプセル化実行部18は、外部ヘッダ12のUDPヘッダ内の送信元ポート番号SPNおよび宛先ポート番号DPNを所定の規定値に定める。そして、カプセル化実行部18は、外部ヘッダ12のVXLANヘッダ内のVXLANネットワーク識別子VNIおよび外部VLANタグO_VLAN内のVLAN識別子VIDに関しては、VPNテーブル[2]21bに基づいて定める。VPNテーブル[2]21bの内容は、例えば、予めネットワーク管理者等によって定められる。   Further, the encapsulation execution unit 18 sets the transmission source port number SPN and the destination port number DPN in the UDP header of the external header 12 to predetermined specified values. Then, the encapsulation execution unit 18 determines the VXLAN network identifier VNI in the VXLAN header of the external header 12 and the VLAN identifier VID in the external VLAN tag O_VLAN based on the VPN table [2] 21b. The contents of the VPN table [2] 21b are determined in advance by a network administrator or the like, for example.

VPNテーブル[2]21bは、図6(b)に示されるように、内部VLAN識別子IVIDと、VXLANネットワーク識別子VNIと、外部VLANタグO_VLAN内のVLAN識別子VIDと、マルチキャストIPアドレスMCIPと、マルチキャスト時の宛先のポート識別子との対応関係を保持する。カプセル化実行部18は、中継処理部17からのフレームに付加されている内部VLAN識別子IVIDをキーとしてVPNテーブル[2]21bを参照し、対応するVXLANネットワーク識別子VNIおよび外部VLANタグO_VLAN内のVLAN識別子VIDを取得する。   As shown in FIG. 6 (b), the VPN table [2] 21b includes an internal VLAN identifier IVID, a VXLAN network identifier VNI, a VLAN identifier VID in the external VLAN tag O_VLAN, a multicast IP address MCIP, and a multicast time. The correspondence relationship with the port identifier of the destination is held. The encapsulation execution unit 18 refers to the VPN table [2] 21b with the internal VLAN identifier IVID added to the frame from the relay processing unit 17 as a key, and the VLAN in the corresponding VXLAN network identifier VNI and the external VLAN tag O_VLAN. Get the identifier VID.

カプセル化実行部18は、このようにして生成したカプセル化フレームFRCを中継実行部20へ送信する。デカプセル化実行部19は、受信したカプセル化フレームFRCから外部ヘッダ12を取り除くことで非カプセル化フレームFRを生成し、当該非カプセル化フレームFRを中継実行部20へ送信する。   The encapsulation execution unit 18 transmits the encapsulated frame FRC generated in this way to the relay execution unit 20. The decapsulation execution unit 19 generates an unencapsulated frame FR by removing the outer header 12 from the received encapsulated frame FRC, and transmits the unencapsulated frame FR to the relay execution unit 20.

中継実行部20は、前述した各処理部からのフレーム(非カプセル化フレームまたはカプセル化フレーム)を、インタフェース部15内の所定の送信バッファへ送信する。この所定の送信バッファは、FDB処理部26によって当該フレームに付加される宛先ポート識別子DPIDに対応するバッファである。また、中継実行部20は、フレームに付加されている不要な情報(例えば、受信ポート識別子RPIDや宛先ポート識別子DPID等)を削除する。インタフェース部15内の送信バッファは、中継実行部20からのフレームを受けて、対応するポート(すなわち宛先ポート識別子DPIDが表す下位ポートPdまたは上位ポートPu)へフレームを送信する。   The relay execution unit 20 transmits the frame (unencapsulated frame or encapsulated frame) from each processing unit described above to a predetermined transmission buffer in the interface unit 15. This predetermined transmission buffer is a buffer corresponding to the destination port identifier DPID added to the frame by the FDB processing unit 26. In addition, the relay execution unit 20 deletes unnecessary information (for example, the reception port identifier RPID and the destination port identifier DPID) added to the frame. The transmission buffer in the interface unit 15 receives the frame from the relay execution unit 20 and transmits the frame to the corresponding port (that is, the lower port Pd or the upper port Pu represented by the destination port identifier DPID).

なお、ここでは、FDBの検索結果がヒットした場合を想定した。一方、FDB検索結果がミスヒットの場合や、下位ポートPdで受信した非カプセル化フレームFRの宛先の内部MACアドレスI_DMACがブロードキャストアドレス等の場合、中継処理部17は、VPNテーブル[2]21bに基づき、マルチキャストの処理を行う。具体的には、中継処理部17は、受信したフレームの内部VLAN識別子IVIDをキーとしてVPNテーブル[2]21bを参照し、マルチキャストIPアドレスMCIPおよびマルチキャスト時の宛先のポート識別子を取得する。   Here, it is assumed that the search result of the FDB hits. On the other hand, when the FDB search result is a miss hit, or when the internal MAC address I_DMAC of the destination of the unencapsulated frame FR received by the lower port Pd is a broadcast address, the relay processing unit 17 stores the VPN table [2] 21b. Based on this, multicast processing is performed. Specifically, the relay processing unit 17 refers to the VPN table [2] 21b using the internal VLAN identifier IVID of the received frame as a key, and acquires the multicast IP address MCIP and the destination port identifier at the time of multicast.

例えば、図6(b)を例として、取得した宛先のポート識別子が{Pu[1]},{Pd[1]},{Pd[n]}であり、受信ポート識別子RPIDが{Pd[1]}であった場合を想定する。この場合、中継処理部17は、受信したフレームをコピーすることで2個のフレームを生成し、一方を、宛先ポート識別子{Pu[1]}およびマルチキャストIPアドレスMCIPを付加したのちカプセル化実行部18へ送信し、他方を、宛先ポート識別子{Pd[n]}を付加したのち中継実行部20へ送信する。カプセル化実行部18は、当該マルチキャストIPアドレスMCIPを用いて、図2のカプセル化フレームFRC31aの場合と同様のカプセル化フレームFRCを生成する。   For example, taking FIG. 6B as an example, the acquired destination port identifiers are {Pu [1]}, {Pd [1]}, {Pd [n]}, and the received port identifier RPID is {Pd [1]. ]} Is assumed. In this case, the relay processing unit 17 generates two frames by copying the received frame, adds one of the destination port identifier {Pu [1]} and the multicast IP address MCIP, and then performs the encapsulation execution unit. 18, and the other is added to the destination port identifier {Pd [n]} and then transmitted to the relay execution unit 20. The encapsulation execution unit 18 uses the multicast IP address MCIP to generate an encapsulated frame FRC similar to the encapsulated frame FRC 31a in FIG.

また、中継処理部17の終端判定部27は、図7のステップS101に示すように、上位ポートPuでフレームを受信した場合(例えば、受信ポート識別子RPIDが上位ポートPuであった場合)に、各種処理を実行する。この場合、終端判定部27は、まず、受信したフレームに含まれるイーサタイプがIPv4またはIPv6であるか否かを判定する(ステップS102)。IPv4またはIPv6でない場合、終端判定部27は、受信したフレームを破棄する(ステップS108)。ステップS108でフレームが破棄された場合、その後の処理(例えば、FDB処理部26の処理等)は行われない。   Further, as shown in step S101 of FIG. 7, the termination determination unit 27 of the relay processing unit 17 receives a frame at the upper port Pu (for example, when the reception port identifier RPID is the upper port Pu). Perform various processes. In this case, the termination determination unit 27 first determines whether the ether type included in the received frame is IPv4 or IPv6 (step S102). If it is not IPv4 or IPv6, the termination determination unit 27 discards the received frame (step S108). When the frame is discarded in step S108, subsequent processing (for example, processing of the FDB processing unit 26) is not performed.

一方、IPv4またはIPv6である場合、終端判定部27は、UDPヘッダのポート番号(具体的には宛先ポート番号DPN)がVXLAN用の規定値であるか否かを判定する(ステップS103)。VXLAN用の規定値でない場合、終端判定部27は、当該フレームを破棄する(ステップS108)。一方、VXLAN用の規定値である場合、終端判定部27は、宛先の外部IPアドレスO_DIPが、マルチキャストIPアドレスMCIPであり(ステップS104)、かつ当該マルチキャストIPアドレスMCIPがVPNテーブル[2]21bに登録されているか否かを判定する(ステップS105)。   On the other hand, in the case of IPv4 or IPv6, the termination determination unit 27 determines whether or not the port number (specifically, the destination port number DPN) of the UDP header is a specified value for VXLAN (step S103). If it is not the specified value for VXLAN, the termination determination unit 27 discards the frame (step S108). On the other hand, when the specified value is for VXLAN, the termination determination unit 27 determines that the destination external IP address O_DIP is the multicast IP address MCIP (step S104), and the multicast IP address MCIP is stored in the VPN table [2] 21b. It is determined whether it is registered (step S105).

ステップS105でVPNテーブル[2]21bに登録されている場合、終端判定部27は、受信したフレームを終端する(ステップS107)。ステップS107でフレームが終端された場合、その後の処理(例えば、FDB処理部26の処理等)が行われる。一方、ステップS105でVPNテーブル[2]21bに登録されていない場合、終端判定部27は、受信したフレームを破棄する(ステップS108)。   If it is registered in the VPN table [2] 21b in step S105, the termination determination unit 27 terminates the received frame (step S107). When the frame is terminated in step S107, subsequent processing (for example, processing of the FDB processing unit 26) is performed. On the other hand, if it is not registered in the VPN table [2] 21b in step S105, the termination determination unit 27 discards the received frame (step S108).

また、ステップS104で宛先の外部IPアドレスO_DIPがマルチキャストIPアドレスMCIPでない場合、終端判定部27は、受信したフレームの宛先の外部IPアドレスO_DIPおよび宛先の外部MACアドレスO_DMACが自身のIPアドレスおよびMACアドレスであるか否かを判定する(ステップS106)。終端判定部27は、自身のIPアドレスおよびMACアドレスである場合、受信したフレームを終端し(ステップS107)、自身のIPアドレスおよびMACアドレスでない場合、受信したフレームを破棄する(ステップS108)。   If the destination external IP address O_DIP is not the multicast IP address MCIP in step S104, the termination determination unit 27 determines that the destination external IP address O_DIP and the destination external MAC address O_DMAC of the received frame are its own IP address and MAC address. It is determined whether or not (step S106). The termination determination unit 27 terminates the received frame if it is its own IP address and MAC address (step S107), and discards the received frame if it is not its own IP address and MAC address (step S108).

このように、終端判定部27は、上位ポートPuでフレームを受信した場合に、主に、[条件1]〜[条件3]を満たすか否かを判定する。   In this way, the termination determination unit 27 mainly determines whether or not [Condition 1] to [Condition 3] are satisfied when a frame is received by the upper port Pu.

[条件1]UDPヘッダのポート番号がVXLAN用の規定値である(ステップS103)
[条件2]宛先の外部IPアドレスO_DIPが自身が参加しているマルチキャストグループのマルチキャストIPアドレスである(ステップS104,S105)
[条件3]宛先の外部IPアドレスO_DIPおよび宛先の外部MACアドレスO_DMACが共に自身のIPアドレスおよびMACアドレスである(ステップS106)
[Condition 1] The port number of the UDP header is a specified value for VXLAN (step S103).
[Condition 2] The destination external IP address O_DIP is the multicast IP address of the multicast group in which it participates (steps S104 and S105).
[Condition 3] Both the destination external IP address O_DIP and the destination external MAC address O_DMAC are their own IP address and MAC address (step S106).

そして、終端判定部27は、[条件1]かつ[条件2]を満たす場合か、または[条件1]かつ[条件3]を満たす場合に、受信したフレームに対してFDB学習・検索等の処理を行い(ステップS107)、そうでない場合には、受信したフレームを破棄する(ステップS108)。これにより、スイッチ装置VTEPは、自身宛てのVXLANフレームのみを対象に中継処理を実行することができ、イレギュラーなフレームの中継(例えば、自身宛てで無いフレームを受信することによる上位ポートPu間でフレーム中継等)に伴う不要な処理の発生やネットワーク内の不要なフレームの増大等を抑制することが可能になる。   Then, the termination determination unit 27 performs processing such as FDB learning / search for the received frame when [Condition 1] and [Condition 2] are satisfied, or when [Condition 1] and [Condition 3] are satisfied. (Step S107). Otherwise, the received frame is discarded (step S108). As a result, the switching device VTEP can perform the relay process only on the VXLAN frame addressed to itself, and relays irregular frames (for example, between upper ports Pu by receiving frames not addressed to itself). It is possible to suppress the occurrence of unnecessary processing due to frame relay and the like, the increase of unnecessary frames in the network, and the like.

図5の代表的な実装形態として、インタフェース部15や中継実行部20は、ASIC(Application Specific Integrated Circuit)等に実装される。テーブル処理部16、中継処理部17、カプセル化実行部18およびデカプセル化実行部19は、FPGA(Field Programmable Gate Array)等に実装される。FDBは、CAM(Content Addressable Memory)等に実装され、VPNテーブル[1]21a,[2]21bは、EEPROM(Electrically Erasable Programmable Read Only Memory)やフラッシュメモリ等の書き換え可能なメモリに実装される。   As a typical implementation form of FIG. 5, the interface unit 15 and the relay execution unit 20 are mounted on an ASIC (Application Specific Integrated Circuit) or the like. The table processing unit 16, the relay processing unit 17, the encapsulation execution unit 18, and the decapsulation execution unit 19 are mounted on an FPGA (Field Programmable Gate Array) or the like. The FDB is mounted on a CAM (Content Addressable Memory) or the like, and the VPN tables [1] 21a and [2] 21b are mounted on a rewritable memory such as an EEPROM (Electrically Erasable Programmable Read Only Memory) or a flash memory.

ただし、各部の具体的な実装形態は、必ずしも、これに限定されるものではなく、ハードウェアまたはソフトウェアあるいはその組合せを用いて適宜実装されればよい。例えば、前述した中継処理部17におけるマルチキャストの処理等は、CPU(Central Processing Unit)によるソフトウェア処理で行うことも可能である。   However, the specific mounting form of each part is not necessarily limited to this, and may be appropriately mounted using hardware, software, or a combination thereof. For example, the multicast processing and the like in the relay processing unit 17 described above can also be performed by software processing by a CPU (Central Processing Unit).

《スイッチ装置の動作》
図8、図9および図10は、図5のスイッチ装置における代表的な動作例を示す説明図である。図8には、図1に示したように、スイッチ装置VTEP[1]が上位ポートPu[1]でカプセル化フレームFRC31bを受信し、それを非カプセル化フレームFR31に変換して下位ポートPd[1]へ中継する場合の動作例が示される。まず、受信ポート識別子付加部25は、受信したカプセル化フレームFRC31bに受信ポート識別子RPID{Pu[1]}を付加し、それをテーブル処理部16へ送信する。
<Operation of switch device>
8, FIG. 9 and FIG. 10 are explanatory diagrams showing typical operation examples in the switch device of FIG. In FIG. 8, as shown in FIG. 1, the switching device VTEP [1] receives the encapsulated frame FRC31b at the upper port Pu [1], converts it into the unencapsulated frame FR31, and converts it to the lower port Pd [ An example of operation when relaying to 1] is shown. First, the reception port identifier adding unit 25 adds the reception port identifier RPID {Pu [1]} to the received encapsulated frame FRC31b and transmits it to the table processing unit 16.

テーブル処理部16は、受信ポート識別子RPID{Pu[1]}とカプセル化フレームFRC31bに含まれるVXLANネットワーク識別子VNI“VN10”との組み合わせをキーとしてVPNテーブル[1]21aを参照し、その結果に基づき、当該フレームに内部VLAN識別子IVID“IV1”を付加する。そして、テーブル処理部16は、当該フレームを中継処理部17へ送信する。中継処理部17の終端判定部27は、フレームの受信ポートが上位ポートPuであるため、図7の処理を実行する。ここでは、終端判定部27は、図7の処理結果としてフレームを終端し、FDB処理部26へ処理を移行する。   The table processing unit 16 refers to the VPN table [1] 21a with the combination of the reception port identifier RPID {Pu [1]} and the VXLAN network identifier VNI “VN10” included in the encapsulated frame FRC31b as a key, Based on this, the internal VLAN identifier IVID “IV1” is added to the frame. Then, the table processing unit 16 transmits the frame to the relay processing unit 17. The termination determination unit 27 of the relay processing unit 17 executes the process of FIG. 7 because the frame reception port is the upper port Pu. Here, the termination determination unit 27 terminates the frame as the processing result of FIG. 7, and shifts the processing to the FDB processing unit 26.

FDB処理部26は、受信したフレームの送信元の内部MACアドレスI_SMAC“MA31”および内部VLAN識別子IVID“IV1”を、送信元の外部MACアドレスO_SMAC“MAa”、送信元の外部IPアドレスO_SIP“IPA2”および受信ポート識別子RPID{Pu[1]}に対応付けてFDBに学習する。また、FDB処理部26は、受信したフレームの宛先の内部MACアドレスI_DMAC“MA11”および内部VLAN識別子IVID“IV1”を検索キーとしてFDBを検索し、宛先ポート識別子DPID{Pd[1]}を取得する。これに応じて、FDB処理部26は、当該フレームに宛先ポート識別子DPID{Pd[1]}を付加し、それをデカプセル化実行部19へ送信する。   The FDB processing unit 26 sets the source internal MAC address I_SMAC “MA31” and the internal VLAN identifier IVID “IV1” of the received frame, the source external MAC address O_SMAC “MAa”, and the source external IP address O_SIP “IPA2”. "And the receiving port identifier RPID {Pu [1]} are learned in the FDB. Further, the FDB processing unit 26 searches the FDB using the internal MAC address I_DMAC “MA11” of the destination of the received frame and the internal VLAN identifier IVID “IV1” as search keys, and acquires the destination port identifier DPID {Pd [1]}. To do. In response to this, the FDB processing unit 26 adds the destination port identifier DPID {Pd [1]} to the frame and transmits it to the decapsulation executing unit 19.

デカプセル化実行部19は、カプセル化フレームFRC31bから外部ヘッダ12を取り除くことで非カプセル化フレームFR13を生成し、それを中継実行部20へ送信する。中継実行部20およびインタフェース部15は、フレームに付加されている宛先ポート識別子DPID{Pd[1]}に基づき、不要な情報を削除した上で非カプセル化フレームFR13を下位ポートPd[1]へ送信する。   The decapsulation executing unit 19 generates the non-encapsulated frame FR13 by removing the outer header 12 from the encapsulated frame FRC31b, and transmits it to the relay executing unit 20. The relay execution unit 20 and the interface unit 15 delete unnecessary information based on the destination port identifier DPID {Pd [1]} added to the frame, and then transfer the unencapsulated frame FR13 to the lower port Pd [1]. Send.

図9には、図1に示したように、スイッチ装置VTEP[1]が下位ポートPd[1]で非カプセル化フレームFR13を受信し、それをカプセル化フレームFRC13aに変換して上位ポートPu[1]へ中継する場合の動作例が示される。まず、受信ポート識別子付加部25は、受信した非カプセル化フレームFR13に受信ポート識別子RPID{Pd[1]}を付加し、それをテーブル処理部16へ送信する。   In FIG. 9, as shown in FIG. 1, the switching device VTEP [1] receives the unencapsulated frame FR13 at the lower port Pd [1], converts it into the encapsulated frame FRC13a, and converts it to the upper port Pu [ An example of operation when relaying to 1] is shown. First, the reception port identifier adding unit 25 adds the reception port identifier RPID {Pd [1]} to the received unencapsulated frame FR13 and transmits it to the table processing unit 16.

テーブル処理部16は、受信ポート識別子RPID{Pd[1]}と非カプセル化フレームFR13に含まれる内部VLANタグI_VLAN内のVLAN識別子VID“V1”との組み合わせをキーとしてVPNテーブル[1]21aを参照し、その結果に基づき、当該フレームに内部VLAN識別子IVID“IV1”を付加する。そして、テーブル処理部16は、当該フレームを中継処理部17へ送信する。   The table processing unit 16 uses the combination of the reception port identifier RPID {Pd [1]} and the VLAN identifier VID “V1” in the internal VLAN tag I_VLAN included in the non-encapsulated frame FR13 as a key for the VPN table [1] 21a. Based on the result, the internal VLAN identifier IVID “IV1” is added to the frame. Then, the table processing unit 16 transmits the frame to the relay processing unit 17.

中継処理部17のFDB処理部26は、受信したフレームの送信元の内部MACアドレスI_SMAC“MA11”および内部VLAN識別子IVID“IV1”を、受信ポート識別子RPID{Pd[1]}に対応付けてFDBに学習する。また、FDB処理部26は、受信したフレームの宛先の内部MACアドレスI_DMAC“MA31”および内部VLAN識別子IVID“IV1”を検索キーとしてFDBを検索し、宛先の外部MACアドレスO_DMAC、宛先の外部IPアドレスO_DIPおよび宛先ポート識別子DPID{Pu[1]}を取得する。これに応じて、FDB処理部26は、これらの取得情報をフレームに付加し、それをカプセル化実行部18へ送信する。   The FDB processing unit 26 of the relay processing unit 17 associates the internal MAC address I_SMAC “MA11” and the internal VLAN identifier IVID “IV1” of the transmission source of the received frame with the reception port identifier RPID {Pd [1]}. To learn. Further, the FDB processing unit 26 searches the FDB using the internal MAC address I_DMAC “MA31” of the destination of the received frame and the internal VLAN identifier IVID “IV1” as search keys, the external MAC address of the destination O_DMAC, and the external IP address of the destination Obtain O_DIP and destination port identifier DPID {Pu [1]}. In response to this, the FDB processing unit 26 adds the acquired information to the frame and transmits it to the encapsulation execution unit 18.

カプセル化実行部18は、フレームに付加されている取得情報と、VPNテーブル[2]21bに基づく情報とを用いて外部ヘッダ12を生成し、当該外部ヘッダ12で非カプセル化フレームFR13をカプセル化することでカプセル化フレームFRC13aを生成する。この際に、カプセル化実行部18は、フレームの内部VLAN識別子IVID“IV1”をキーとしてVPNテーブル[2]21bを参照し、外部VLANタグO_VLAN内のVLAN識別子VID“V10”およびVXLANネットワーク識別子VNI“VN10”を取得する。   The encapsulation execution unit 18 generates the external header 12 using the acquisition information added to the frame and the information based on the VPN table [2] 21b, and encapsulates the non-encapsulated frame FR13 with the external header 12 As a result, an encapsulated frame FRC 13a is generated. At this time, the encapsulation execution unit 18 refers to the VPN table [2] 21b using the internal VLAN identifier IVID “IV1” of the frame as a key, and the VLAN identifier VID “V10” and the VXLAN network identifier VNI in the external VLAN tag O_VLAN. “VN10” is acquired.

カプセル化実行部18は、当該カプセル化フレームFRC13aを中継実行部20へ送信する。中継実行部20およびインタフェース部15は、フレームに付加されている宛先ポート識別子DPID{Pu[1]}に基づき、不要な情報を削除した上でカプセル化フレームFRC13aを上位ポートPu[1]へ送信する。   The encapsulation executing unit 18 transmits the encapsulated frame FRC 13 a to the relay executing unit 20. The relay execution unit 20 and the interface unit 15 transmit the encapsulated frame FRC13a to the upper port Pu [1] after deleting unnecessary information based on the destination port identifier DPID {Pu [1]} added to the frame. To do.

図10には、図1において、スイッチ装置VTEP[1]が、仮想マシンVM11からの仮想マシンVM21宛の非カプセル化フレームFR12を下位ポートPd[1]で受信し、それを下位ポートPd[n]へ中継する場合の動作例が示される。まず、受信ポート識別子付加部25は、受信した非カプセル化フレームFR12に受信ポート識別子RPID{Pd[1]}を付加し、それをテーブル処理部16へ送信する。   In FIG. 10, in FIG. 1, the switch device VTEP [1] receives the unencapsulated frame FR12 addressed to the virtual machine VM21 from the virtual machine VM11 at the lower port Pd [1] and receives it at the lower port Pd [n]. ] Shows an example of operation when relaying to. First, the reception port identifier adding unit 25 adds the reception port identifier RPID {Pd [1]} to the received unencapsulated frame FR12 and transmits it to the table processing unit 16.

テーブル処理部16は、受信ポート識別子RPID{Pd[1]}と非カプセル化フレームFR12に含まれる内部VLANタグI_VLAN内のVLAN識別子VID“V1”との組み合わせをキーとしてVPNテーブル[1]21aを参照し、その結果に基づき、当該フレームに内部VLAN識別子IVID“IV1”を付加する。そして、テーブル処理部16は、当該フレームを中継処理部17へ送信する。   The table processing unit 16 uses the combination of the reception port identifier RPID {Pd [1]} and the VLAN identifier VID “V1” in the internal VLAN tag I_VLAN included in the non-encapsulated frame FR12 as a key for the VPN table [1] 21a. Based on the result, the internal VLAN identifier IVID “IV1” is added to the frame. Then, the table processing unit 16 transmits the frame to the relay processing unit 17.

中継処理部17のFDB処理部26は、受信したフレームの送信元の内部MACアドレスI_SMAC“MA11”および内部VLAN識別子IVID“IV1”を、受信ポート識別子RPID{Pd[1]}に対応付けてFDBに学習する。また、FDB処理部26は、受信したフレームの宛先の内部MACアドレスI_DMAC“MA21”および内部VLAN識別子IVID“IV1”を検索キーとしてFDBを検索し、宛先ポート識別子DPID{Pd[n]}を取得する。これに応じて、FDB処理部26は、宛先ポート識別子DPID{Pd[n]}をフレームに付加し、それを中継実行部20へ送信する。中継実行部20およびインタフェース部15は、フレームに付加されている宛先ポート識別子DPID{Pd[n]}に基づき、不要な情報を削除した上で非カプセル化フレームFR12を下位ポートPd[n]へ送信する。   The FDB processing unit 26 of the relay processing unit 17 associates the internal MAC address I_SMAC “MA11” and the internal VLAN identifier IVID “IV1” of the transmission source of the received frame with the reception port identifier RPID {Pd [1]}. To learn. Further, the FDB processing unit 26 searches the FDB using the internal MAC address I_DMAC “MA21” of the destination of the received frame and the internal VLAN identifier IVID “IV1” as search keys, and acquires the destination port identifier DPID {Pd [n]}. To do. In response to this, the FDB processing unit 26 adds the destination port identifier DPID {Pd [n]} to the frame and transmits it to the relay execution unit 20. The relay execution unit 20 and the interface unit 15 delete unnecessary information based on the destination port identifier DPID {Pd [n]} added to the frame, and then transfer the unencapsulated frame FR12 to the lower port Pd [n]. Send.

以上、本実施の形態のスイッチ装置および中継システムを用いることで、代表的には、VXLANにおける通信の高速化が実現できる。   As described above, by using the switch device and the relay system according to the present embodiment, it is possible to typically achieve high-speed communication in VXLAN.

以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。例えば、前述した実施の形態は、本発明を分かり易く説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施の形態の構成の一部を他の実施の形態の構成に置き換えることが可能であり、また、ある実施の形態の構成に他の実施の形態の構成を加えることも可能である。また、各実施の形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。   As mentioned above, the invention made by the present inventor has been specifically described based on the embodiments. However, the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the invention. For example, the above-described embodiment has been described in detail for easy understanding of the present invention, and is not necessarily limited to one having all the configurations described. Further, a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment. . Further, it is possible to add, delete, and replace other configurations for a part of the configuration of each embodiment.

10a〜10c 情報処理装置
12 外部ヘッダ
15 インタフェース部
16 テーブル処理部
17 中継処理部
18 カプセル化実行部
19 デカプセル化実行部
20 中継実行部
21,21a,21b VPNテーブル
25 受信ポート識別子付加部
26 FDB処理部
27 終端判定部
FR 非カプセル化フレーム
FRC カプセル化フレーム
I_DMAC 宛先の内部MACアドレス
I_MAC 内部MACアドレス
I_SMAC 送信元の内部MACアドレス
I_VLAN 内部VLANタグ
IVID 内部VLAN識別子
NW1 L3ネットワーク
NW2a,NW2b L2ネットワーク
O_DIP 宛先の外部IPアドレス
O_DMAC 宛先の外部MACアドレス
O_IP 外部IPアドレス
O_MAC 外部MACアドレス
O_SIP 送信元の外部IPアドレス
O_SMAC 送信元の外部MACアドレス
O_VLAN 外部VLANタグ
Pd 下位ポート
Pu 上位ポート
RTa,RTb ルータ装置
VID VLAN識別子
VM11,VM12,VM21,VM22,VM31,VM32 仮想マシン
VNI VXLANネットワーク識別子
VTEP スイッチ装置
10a to 10c Information processing device 12 External header 15 Interface unit 16 Table processing unit 17 Relay processing unit 18 Encapsulation execution unit 19 Decapsulation execution unit 20 Relay execution unit 21, 21a, 21b VPN table 25 Reception port identifier addition unit 26 FDB processing Unit 27 termination determination unit FR unencapsulated frame FRC encapsulated frame I_DMAC destination internal MAC address I_MAC internal MAC address I_SMAC source internal MAC address I_VLAN internal VLAN tag IVID internal VLAN identifier NW1 L3 network NW2a, NW2b L2 network O_DIP destination External IP address O_DMAC Destination external MAC address O_IP External IP address O_MAC External MAC address O_SIP Transmission External IP address O_SMAC source external MAC address O_VLAN outer VLAN tag Pd downstream port Pu upper port RTa, RTb router device VID VLAN identifier VM11, VM12, VM21, VM22, VM31, VM32 VM VNI VXLAN network identifier VTEP switching device

Claims (8)

VXLAN(Virtual eXtensible Local Area Network)に基づきフレームを中継するスイッチ装置であって、
非カプセル化フレームの通信を行う下位ポートと、
前記非カプセル化フレームを外部ヘッダでカプセル化することでカプセル化フレームを生成するカプセル化実行部と、
前記カプセル化フレームの通信を行う上位ポートと、
外部MACアドレスと、外部IPアドレスと、内部MACアドレスと、ポート識別子との対応関係を保持するFDB(Forwarding DataBase)と、
前記FDBの学習および検索を行う中継処理部と、
を有し、
前記中継処理部は、
前記上位ポートで前記カプセル化フレームを受信した場合に、当該受信した上位ポートの前記ポート識別子と、前記カプセル化フレームの前記外部ヘッダに含まれる送信元の前記外部MACアドレスおよび送信元の前記外部IPアドレスと、前記カプセル化フレーム内の前記非カプセル化フレームの領域に含まれる送信元の前記内部MACアドレスとの対応関係を前記FDBに学習し、
前記下位ポートで前記非カプセル化フレームを受信した場合に、前記非カプセル化フレームに含まれる宛先の前記内部MACアドレスを検索キーとして前記FDBを検索し、当該検索結果として前記上位ポートの前記ポート識別子、前記外部MACアドレスおよび前記外部IPアドレスを取得した際には、前記非カプセル化フレームを前記カプセル化実行部を介して前記上位ポートに向けて送信し、
前記カプセル化実行部は、前記FDBの検索結果に基づく宛先の前記外部MACアドレスおよび宛先の前記外部IPアドレスを含んだ前記カプセル化フレームを生成する、
スイッチ装置。
A switching device that relays frames based on VXLAN (Virtual eXtensible Local Area Network),
A lower port that communicates unencapsulated frames;
An encapsulation execution unit that generates an encapsulated frame by encapsulating the unencapsulated frame with an external header;
An upper port for communicating the encapsulated frame;
FDB (Forwarding DataBase) that holds the correspondence between external MAC address, external IP address, internal MAC address, and port identifier;
A relay processing unit for learning and searching the FDB;
Have
The relay processing unit
When the encapsulated frame is received by the upper port, the port identifier of the received upper port, the external MAC address of the transmission source included in the external header of the encapsulated frame, and the external IP of the transmission source The FDB learns the correspondence between the address and the internal MAC address of the transmission source included in the area of the unencapsulated frame in the encapsulated frame,
When receiving the unencapsulated frame at the lower port, the FDB is searched using the internal MAC address of the destination included in the unencapsulated frame as a search key, and the port identifier of the upper port is acquired as the search result When the external MAC address and the external IP address are acquired, the unencapsulated frame is transmitted to the upper port via the encapsulation execution unit,
The encapsulation execution unit generates the encapsulated frame including the external MAC address of the destination and the external IP address of the destination based on the search result of the FDB;
Switch device.
請求項1記載のスイッチ装置において、
前記中継処理部は、前記下位ポートで前記非カプセル化フレームを受信した場合の前記FDBの検索結果として、前記下位ポートの前記ポート識別子を取得した際には、前記非カプセル化フレームを前記下位ポートに向けて送信する、
スイッチ装置。
The switch device according to claim 1,
When the relay processing unit obtains the port identifier of the lower port as a search result of the FDB when the unencapsulated frame is received by the lower port, the relay processing unit converts the unencapsulated frame to the lower port Send to
Switch device.
請求項1記載のスイッチ装置において、
前記カプセル化フレームから前記外部ヘッダを取り除くことで前記非カプセル化フレームを生成するデカプセル化実行部を有し、
前記中継処理部は、前記上位ポートで前記カプセル化フレームを受信した場合に、前記カプセル化フレーム内の前記非カプセル化フレームの領域に含まれる宛先の前記内部MACアドレスを検索キーとして前記FDBを検索し、当該検索結果として前記下位ポートの前記ポート識別子を取得した際には、前記カプセル化フレームを前記デカプセル化実行部を介して前記下位ポートに向けて送信する、
スイッチ装置。
The switch device according to claim 1,
A decapsulation execution unit that generates the unencapsulated frame by removing the outer header from the encapsulated frame;
When the relay processing unit receives the encapsulated frame at the upper port, the relay processing unit searches the FDB using the internal MAC address of the destination included in the area of the unencapsulated frame in the encapsulated frame as a search key. And when the port identifier of the lower port is acquired as the search result, the encapsulated frame is transmitted to the lower port via the decapsulation execution unit.
Switch device.
請求項1記載のスイッチ装置において、
前記非カプセル化フレームに含まれるVLAN識別子と、前記カプセル化フレームの前記外部ヘッダに含まれるVXLANネットワーク識別子とを内部VLAN識別子を介して対応付けるVPNテーブルを有し、
前記FDBの前記対応関係には、さらに、前記内部VLAN識別子が含まれ、
前記中継処理部は、前記下位ポートで前記非カプセル化フレームを受信した場合に、当該非カプセル化フレームの前記VLAN識別子に対応する前記内部VLAN識別子を前記FDBに学習し、前記上位ポートで前記カプセル化フレームを受信した場合に、当該カプセル化フレームの前記VXLANネットワーク識別子に対応する前記内部VLAN識別子を前記FDBに学習する、
スイッチ装置。
The switch device according to claim 1,
A VPN table associating a VLAN identifier included in the unencapsulated frame with a VXLAN network identifier included in the outer header of the encapsulated frame via an internal VLAN identifier;
The correspondence relationship of the FDB further includes the internal VLAN identifier,
When the relay processing unit receives the unencapsulated frame at the lower port, the relay processing unit learns the internal VLAN identifier corresponding to the VLAN identifier of the unencapsulated frame from the FDB, and the capsule port at the upper port. When the FDB is received, the FDB learns the internal VLAN identifier corresponding to the VXLAN network identifier of the encapsulated frame;
Switch device.
IPアドレスに基づきフレームを中継するL3ネットワークと、MACアドレスに基づきフレームを中継するL2ネットワークとの境界に配置され、VXLAN(Virtual eXtensible Local Area Network)に基づきフレームを中継する複数のスイッチ装置を有する中継システムであって、
前記複数のスイッチ装置のそれぞれは、
前記L2ネットワークに接続され、非カプセル化フレームの通信を行う下位ポートと、
前記非カプセル化フレームを外部ヘッダでカプセル化することでカプセル化フレームを生成するカプセル化実行部と、
前記L3ネットワークに接続され、前記カプセル化フレームの通信を行う上位ポートと、
外部MACアドレスと、外部IPアドレスと、内部MACアドレスと、ポート識別子との対応関係を保持するFDB(Forwarding DataBase)と、
前記FDBの学習および検索を行う中継処理部と、
を有し、
前記中継処理部は、
前記上位ポートで前記カプセル化フレームを受信した場合に、当該受信した上位ポートの前記ポート識別子と、前記カプセル化フレームの前記外部ヘッダに含まれる送信元の前記外部MACアドレスおよび送信元の前記外部IPアドレスと、前記カプセル化フレーム内の前記非カプセル化フレームの領域に含まれる送信元の前記内部MACアドレスとの対応関係を前記FDBに学習し、
前記下位ポートで前記非カプセル化フレームを受信した場合に、前記非カプセル化フレームに含まれる宛先の前記内部MACアドレスを検索キーとして前記FDBを検索し、当該検索結果として前記上位ポートの前記ポート識別子、前記外部MACアドレスおよび前記外部IPアドレスを取得した際には、前記非カプセル化フレームを前記カプセル化実行部を介して前記上位ポートに向けて送信し、
前記カプセル化実行部は、前記FDBの検索結果に基づく宛先の前記外部MACアドレスおよび宛先の前記外部IPアドレスを含んだ前記カプセル化フレームを生成する、
中継システム。
Relay having a plurality of switch devices that are arranged at the boundary between an L3 network that relays frames based on IP addresses and an L2 network that relays frames based on MAC addresses and relays frames based on VXLAN (Virtual eXtensible Local Area Network) A system,
Each of the plurality of switch devices includes:
A lower port connected to the L2 network for communicating unencapsulated frames;
An encapsulation execution unit that generates an encapsulated frame by encapsulating the unencapsulated frame with an external header;
An upper port connected to the L3 network and communicating the encapsulated frame;
FDB (Forwarding DataBase) that holds the correspondence between external MAC address, external IP address, internal MAC address, and port identifier;
A relay processing unit for learning and searching the FDB;
Have
The relay processing unit
When the encapsulated frame is received by the upper port, the port identifier of the received upper port, the external MAC address of the transmission source included in the external header of the encapsulated frame, and the external IP of the transmission source The FDB learns the correspondence between the address and the internal MAC address of the transmission source included in the area of the unencapsulated frame in the encapsulated frame,
When the unencapsulated frame is received at the lower port, the FDB is searched using the internal MAC address of the destination included in the unencapsulated frame as a search key, and the port identifier of the upper port is acquired as the search result When the external MAC address and the external IP address are acquired, the unencapsulated frame is transmitted to the upper port via the encapsulation execution unit,
The encapsulation execution unit generates the encapsulated frame including the external MAC address of the destination and the external IP address of the destination based on the search result of the FDB;
Relay system.
請求項5記載の中継システムにおいて、
前記中継処理部は、前記下位ポートで前記非カプセル化フレームを受信した場合の前記FDBの検索結果として、前記下位ポートの前記ポート識別子を取得した際には、前記非カプセル化フレームを前記下位ポートに向けて送信する、
中継システム。
The relay system according to claim 5, wherein
When the relay processing unit obtains the port identifier of the lower port as a search result of the FDB when the unencapsulated frame is received by the lower port, the relay processing unit converts the unencapsulated frame to the lower port Send to
Relay system.
請求項5記載の中継システムにおいて、
前記カプセル化フレームから前記外部ヘッダを取り除くことで前記非カプセル化フレームを生成するデカプセル化実行部を有し、
前記中継処理部は、前記上位ポートで前記カプセル化フレームを受信した場合に、前記カプセル化フレーム内の前記非カプセル化フレームの領域に含まれる宛先の前記内部MACアドレスを検索キーとして前記FDBを検索し、当該検索結果として前記下位ポートの前記ポート識別子を取得した際には、前記カプセル化フレームを前記デカプセル化実行部を介して前記下位ポートに向けて送信する、
中継システム。
The relay system according to claim 5, wherein
A decapsulation execution unit that generates the unencapsulated frame by removing the outer header from the encapsulated frame;
When the relay processing unit receives the encapsulated frame at the upper port, the relay processing unit searches the FDB using the internal MAC address of the destination included in the area of the unencapsulated frame in the encapsulated frame as a search key. And when the port identifier of the lower port is acquired as the search result, the encapsulated frame is transmitted to the lower port via the decapsulation execution unit.
Relay system.
請求項5記載の中継システムにおいて、
前記非カプセル化フレームに含まれるVLAN識別子と、前記カプセル化フレームの前記外部ヘッダに含まれるVXLANネットワーク識別子とを内部VLAN識別子を介して対応付けるVPNテーブルを有し、
前記FDBの前記対応関係には、さらに、前記内部VLAN識別子が含まれ、
前記中継処理部は、前記下位ポートで前記非カプセル化フレームを受信した場合に、当該非カプセル化フレームの前記VLAN識別子に対応する前記内部VLAN識別子を前記FDBに学習し、前記上位ポートで前記カプセル化フレームを受信した場合に、当該カプセル化フレームの前記VXLANネットワーク識別子に対応する前記内部VLAN識別子を前記FDBに学習する、
中継システム。
The relay system according to claim 5, wherein
A VPN table associating a VLAN identifier included in the unencapsulated frame with a VXLAN network identifier included in the outer header of the encapsulated frame via an internal VLAN identifier;
The correspondence relationship of the FDB further includes the internal VLAN identifier,
When the relay processing unit receives the unencapsulated frame at the lower port, the relay processing unit learns the internal VLAN identifier corresponding to the VLAN identifier of the unencapsulated frame from the FDB, and the capsule port at the upper port. When the FDB is received, the FDB learns the internal VLAN identifier corresponding to the VXLAN network identifier of the encapsulated frame;
Relay system.
JP2016125821A 2016-06-24 2016-06-24 Switch device and relay system Expired - Fee Related JP6629681B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016125821A JP6629681B2 (en) 2016-06-24 2016-06-24 Switch device and relay system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016125821A JP6629681B2 (en) 2016-06-24 2016-06-24 Switch device and relay system

Publications (2)

Publication Number Publication Date
JP2017229027A true JP2017229027A (en) 2017-12-28
JP6629681B2 JP6629681B2 (en) 2020-01-15

Family

ID=60892005

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016125821A Expired - Fee Related JP6629681B2 (en) 2016-06-24 2016-06-24 Switch device and relay system

Country Status (1)

Country Link
JP (1) JP6629681B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020022100A (en) * 2018-08-01 2020-02-06 株式会社日立製作所 Device, method and program for network relay
CN113114576A (en) * 2019-12-25 2021-07-13 华为技术有限公司 Method, equipment and system for sending message
EP3863224A1 (en) 2020-02-10 2021-08-11 Fujitsu Limited Diagram generation method and diagram generation program
JP2022515839A (en) * 2018-12-26 2022-02-22 華為技術有限公司 Cloud computing data center systems, gateways, servers, and packet processing methods

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020022100A (en) * 2018-08-01 2020-02-06 株式会社日立製作所 Device, method and program for network relay
CN110798391A (en) * 2018-08-01 2020-02-14 株式会社日立制作所 Network relay device, network relay method, and network relay program
JP7046756B2 (en) 2018-08-01 2022-04-04 株式会社日立製作所 Network relay device, network relay method, and network relay program
JP2022515839A (en) * 2018-12-26 2022-02-22 華為技術有限公司 Cloud computing data center systems, gateways, servers, and packet processing methods
JP7231744B2 (en) 2018-12-26 2023-03-01 ファーウェイ クラウド コンピューティング テクノロジーズ カンパニー リミテッド Cloud computing data center system, gateway, server and packet processing method
US11831551B2 (en) 2018-12-26 2023-11-28 Huawei Cloud Computing Technologies Co., Ltd. Cloud computing data center system, gateway, server, and packet processing method
CN113114576A (en) * 2019-12-25 2021-07-13 华为技术有限公司 Method, equipment and system for sending message
CN113114576B (en) * 2019-12-25 2022-11-25 华为技术有限公司 Method, equipment and system for sending message
EP3863224A1 (en) 2020-02-10 2021-08-11 Fujitsu Limited Diagram generation method and diagram generation program

Also Published As

Publication number Publication date
JP6629681B2 (en) 2020-01-15

Similar Documents

Publication Publication Date Title
US11240065B2 (en) NSH encapsulation for traffic steering
US9281955B2 (en) Interoperability of data plane based overlays and control plane based overlays in a network environment
US10050877B2 (en) Packet forwarding method and apparatus
US10110490B2 (en) Method and apparatus for forwarding packet
US9667541B2 (en) Virtual MAC address, mask-based, packet forwarding
US10476795B2 (en) Data packet forwarding
US20170237655A1 (en) Forwarding Data Packets In Software Defined Networks
US20150358232A1 (en) Packet Forwarding Method and VXLAN Gateway
US10367717B2 (en) Processing a flow entry in VXLAN
CN104935516A (en) Communication system based on software defined network and communication method
WO2016192686A1 (en) Data packet forwarding
US20200021558A1 (en) Packet transmission method and apparatus
US10693833B2 (en) Address resolution suppression in a logical network
CN108632145B (en) Message forwarding method and leaf node equipment
CN107770072B (en) Method and equipment for sending and receiving message
JP6629681B2 (en) Switch device and relay system
JPWO2006093299A1 (en) Tunneling device, tunnel frame sorting method used therefor, and program therefor
US20170332439A1 (en) Extending the range of mesh networks
EP3095216B1 (en) Single hop overlay architecture for line rate performance in campus networks
US20180048593A1 (en) Flow entry generating and packet processing based on flow entry
JP6098192B2 (en) Address generator
CN111953607B (en) Method and device for updating route
CN110752989A (en) Method and device for forwarding east-west traffic
CN108306825B (en) Equivalent forwarding table item generation method and VTEP device
CN107547691B (en) Address resolution protocol message proxy method and device

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20170512

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190121

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191030

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: 20191112

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191205

R150 Certificate of patent or registration of utility model

Ref document number: 6629681

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees