JP2017069657A - Communication system or communication apparatus - Google Patents
Communication system or communication apparatus Download PDFInfo
- Publication number
- JP2017069657A JP2017069657A JP2015190605A JP2015190605A JP2017069657A JP 2017069657 A JP2017069657 A JP 2017069657A JP 2015190605 A JP2015190605 A JP 2015190605A JP 2015190605 A JP2015190605 A JP 2015190605A JP 2017069657 A JP2017069657 A JP 2017069657A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- address
- communication device
- destination
- virtual network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、通信システムまたは通信装置に関する。特に、 VXLAN(Virtual Extensible Local Area Network)のプロトコルに従ったパケットを中継する通信システムまたは通信装置に関する。 The present invention relates to a communication system or a communication apparatus. In particular, the present invention relates to a communication system or a communication apparatus that relays a packet in accordance with a VXLAN (Virtual Extensible Local Area Network) protocol.
特許文献1には、レイヤ3VPNによってコアネットワークに接続した拠点ネットワークとレイヤ2VPNによって接続した拠点ネットワークとの間の通信を可能とするために、VPNのパケット転送を行う第1のNW101と、第1のNW101にレイヤ3にて接続する第2のNW102と、第1のNW101にレイヤ2にて接続する第3のNW103とがVPNを構成し、第2のNW102から第3のNW103の宛先にパケットを送付する際に、レイヤ3によるパケット転送処理を行い、宛先の情報と宛先への中継点となる第3のNW103を接続する第1のNW101に属するネットワーク装置PE1 111の情報を用いて、これらの情報をパケットの宛先情報に格納し転送する、ことが開示される。
Patent Document 1 discloses a first NW 101 that performs packet transfer of VPN in order to enable communication between a base network connected to a core network by Layer 3 VPN and a base network connected by
非特許文献1に示されるVXLANでは、Layer-3(L3)ネットワーク上に、オーバレイネットワークを構築することで、物理的な場所に縛られない仮想Layer-2(L2)ネットワークを構築する(第1章第3〜5段落、第4章第一段落)。 In VXLAN shown in Non-Patent Document 1, a virtual Layer-2 (L2) network that is not tied to a physical location is constructed by constructing an overlay network on a Layer-3 (L3) network (first) Chapters 3-5, Chapter 4, 1st paragraph).
非特許文献2には、送受信される任意のプロトコルに従ったフレームの前にVXLANヘッダに付加し、他のプロトコルとVXLANとを互換を持ち、拡張可能とすることが開示される(第一章第一段落)。
Non-Patent
一人のユーザまたは一つのグループが、複数の仮想L2ネットワークを使用する場合、それぞれの仮想L2ネットワークに属する装置間が通信するために、仮想L2ネットワーク間をL3(Layer−3)中継で接続する必要がある。非特許文献3では、宛先ノードのIPアドレスと、そのノードが接続するVXLANのエッジ装置の対応を示す情報を、BGPを用いて交換することで、転送先を特定することが開示される(5.4節)。 When one user or one group uses a plurality of virtual L2 networks, it is necessary to connect the virtual L2 networks by L3 (Layer-3) relay in order to communicate between devices belonging to each virtual L2 network. There is. Non-Patent Document 3 discloses that a transfer destination is specified by exchanging information indicating correspondence between an IP address of a destination node and a VXLAN edge device to which the node is connected using BGP (5). Section 4).
VXLANによる仮想L2ネットワークに多数のノードが参加すると、VXLANのカプセル化を行う各エッジ装置で学習する必要があるノードの数が増え、大量のエントリを学習可能な高価な装置が必要となる。また、仮想L2ネットワーク内でブロードキャストパケットが流れた際に、中継する必要のあるノードおよびエッジ装置が増え、ネットワーク内を流れるトラフィックが多くなる、装置への負荷がかかるといった問題が生じる。そのため、多数のノードを使用するユーザ(テナント)では、複数の仮想L2ネットワークを使用し、各エッジ装置で学習するノードの数を減らすという運用が想定される。しかしながら、上述したような運用を行う場合、異なる仮想L2ネットワークに属するノード間をL3中継により接続しようとした際に、VXLANのエッジ装置が、宛先のノードと接続しているエッジ装置を知ることができない。一方、非特許文献3に開示される技術では、各エッジ装置の学習する情報を減らすことはできない。 When a large number of nodes participate in a virtual L2 network based on VXLAN, the number of nodes that need to be learned by each edge device that performs VXLAN encapsulation increases, and an expensive device that can learn a large number of entries becomes necessary. In addition, when a broadcast packet flows in the virtual L2 network, there is an increase in the number of nodes and edge devices that need to be relayed, increasing the amount of traffic flowing in the network and increasing the load on the device. Therefore, it is assumed that a user (tenant) who uses a large number of nodes uses a plurality of virtual L2 networks and reduces the number of nodes learned by each edge device. However, when performing the operation as described above, when trying to connect nodes belonging to different virtual L2 networks by L3 relay, the edge device of VXLAN knows the edge device connected to the destination node. Can not. On the other hand, the technology disclosed in Non-Patent Document 3 cannot reduce the information learned by each edge device.
上記課題は、相互にL3中継(OSIで規定されるレイヤ3のプロトコル(IP)に従った中継処理)を行う仮想L2ネットワーク全てに対して各エッジ装置が所属し、中継先の仮想L2ネットワーク内のノード情報を学習する場合、各エッジ装置の学習するノードの数が増大する。また、ブロードキャストによるトラフィック量も減少しない。 The above problem is that each edge device belongs to all the virtual L2 networks that mutually perform L3 relay (relay processing according to the layer 3 protocol (IP) defined by OSI), and in the virtual L2 network of the relay destination When the node information is learned, the number of nodes learned by each edge device increases. Also, the amount of traffic due to broadcasting does not decrease.
また、相互にL3中継を行う仮想L2ネットワークに属するルータを設置する場合、L3中継で通信を行うノードの位置に関わらず、ルータを必ず経由することととなり、転送遅延が増大する。 In addition, when a router belonging to a virtual L2 network that performs L3 relay with each other is installed, the router always passes through the router regardless of the position of the node that performs communication by L3 relay, and the transfer delay increases.
本発明は、以下の形態により上記課題の少なくとも一を解決する。
例えば、本発明の一態様では、第1の仮想ネットワークに属する第1の中継装置と、第2の仮想ネットワークに属する第2の中継装置とを備え、第1の仮想ネットワークと第2の仮想ネットワークは、第3の仮想ネットワークを介して接続され、第1の中継装置は、パケットの宛先の通信装置のIPアドレス(宛先IPアドレス)と宛先のネットワークを識別するネットワーク識別子(宛先VNI)とを対応付けて転送情報(フォワーディングテーブル)に予め記憶し、第1の仮想ネットワークに属する第1の通信装置から第2の仮想ネットワークに属する第2の通信装置宛のパケットを受信すると、転送情報を参照して、受信したパケットの宛先IPアドレスに対応する宛先VNIを特定し、特定した宛先VNIと送信元の第1の通信装置のMACアドレスとを用いて受信したパケットをカプセル化し、カプセル化したパケットを第3の仮想ネットワークに送信し、第2の中継装置は、第3の仮想ネットワークから第2の通信装置宛のパケットを受信すると、受信したパケットに含まれる第1の通信装置のMACアドレスを保持し、受信したパケットをデカプセル化し、デカプセル化したパケットに含まれる第1の通信装置のMACアドレスを第2の中継装置のMACアドレスに更新し、更新したパケットを第2の通信装置宛に送信する、通信システム。
The present invention solves at least one of the above problems by the following modes.
For example, in one aspect of the present invention, a first relay device belonging to a first virtual network and a second relay device belonging to a second virtual network are provided, the first virtual network and the second virtual network. Are connected via a third virtual network, and the first relay device associates the IP address (destination IP address) of the communication device that is the destination of the packet with the network identifier (destination VNI) that identifies the destination network. In addition, when a packet addressed to the second communication device belonging to the second virtual network is received from the first communication device belonging to the first virtual network, the transfer information is referred to and stored in advance in the transfer information (forwarding table). The destination VNI corresponding to the destination IP address of the received packet is identified, and the identified destination VNI and the first communication device of the transmission source The received packet is encapsulated using the MAC address, the encapsulated packet is transmitted to the third virtual network, and the second relay device receives the packet addressed to the second communication device from the third virtual network. Then, the MAC address of the first communication device included in the received packet is held, the received packet is decapsulated, and the MAC address of the first communication device included in the decapsulated packet is set to the MAC of the second relay device. A communication system that updates an address and transmits the updated packet to the second communication device.
本発明の一態様によると、他のルータ装置を介さず、エッジ装置間のL3中継がされるため、転送遅延を低減できることである。 According to one aspect of the present invention, L3 relay is performed between edge devices without passing through another router device, so that a transfer delay can be reduced.
以下、図面を参照して、ネットワークシステム、エッジ装置の実施例を示す。 Embodiments of a network system and an edge device will be described below with reference to the drawings.
図1は、実施形態の一例として、ネットワークシステムの構成を示す説明図である。このネットワークシステムは、各エッジ装置を接続するWAN(Wide Area Network)500と、仮想L2ネットワーク101A、101Bを備えている。仮想L2ネットワーク101Aと101Bは、VNIグループ1に属し、それぞれが拠点ごとの仮想ネットワーク、例えば、別々のVLAN(Virtual Local Area Network)である。同じVNIグループで異なる仮想L2ネットワーク間では、VXLANにおけるL3接続(レイヤ3のプロトコルに従った通信)が、される。エッジ装置が、それぞれの仮想L2ネットワークにおけるゲートウェイであり、ゲートウェイであるエッジ装置間で、VXLANにおけるL3接続がされる。
また、仮想L2ネットワーク101Aのネットワークアドレスおよびプレフィックス長はIPアドレス/プレフィックス長101Aであり、仮想L2ネットワーク101Bのネットワークアドレスおよびプレフィックス長は、IPアドレス/プレフィックス長101Bである。
FIG. 1 is an explanatory diagram illustrating a configuration of a network system as an example of an embodiment. This network system includes a WAN (Wide Area Network) 500 connecting the edge devices and
The network address and prefix length of the virtual L2 network 101A are IP address / prefix length 101A, and the network address and prefix length of the
仮想L2ネットワーク101Aには、中継装置であるエッジ装置300Aとエッジ装置300Aと物理ネットワーク100Aを介して接続するノード102Aである通信装置が所属している。仮想L2ネットワーク101Bには、中継装置であるエッジ装置300B、200Cおよび、エッジ装置300Bと物理ネットワーク100Bを介して接続するノード102Bである通信装置が所属している。ノード102Bは、仮想L2ネットワーク101Bと異なるL2ネットワークに所属するノード102Cとも接続する。
To the virtual L2 network 101A, an
エッジ装置およびノードには、予めMACアドレスおよびIPアドレスが割り当てられている。エッジ装置300AがWAN500と接続しているインタフェースは、MACアドレスとしてMAC300A、IPアドレスとしてIP300Aを持つ。同じくエッジ装置300BがWAN500と接続するインタフェースには、MACアドレスとしてMAC300B、IPアドレスとしてIP300Bが割り当てられ、エッジ装置300CがWAN500と接続するインタフェースにはMACアドレスとしてMAC300C、IPアドレスとしてIP300Cが割り当てられる。また、ノード102Aには、MACアドレスとしてMAC102AとIPアドレスとしてIP102Aが割り当てられ、ノード102Bには、MACアドレスとしてMAC102BとIPアドレスとしてIP102Bとが割り当てられる。ノード102Cには、MACアドレスとしてMAC102CとIPアドレスとしてIP102Cが割り当てられる。仮想L2ネットワーク101Aに接続するエッジ装置300Aのインタフェースには、MAC1、IP1が、仮想L2ネットワーク101Bに接続するエッジ装置300B、エッジ装置300Cのインタフェースには、MAC2、IP2が割り当てられる。
MAC addresses and IP addresses are assigned in advance to edge devices and nodes. The interface through which the
次に、処理の流れを説明する。ノード102Aからエッジ装置300Aへ送信されるユーザパケット(P1601)、エッジ装置300Aからエッジ装置300Bへ送信される拡張VXLANパケット(P1606)、エッジ装置300Bからノード102Bへ送信されるユーザパケット(P1607)である。
Next, the process flow will be described. A user packet (P1601) transmitted from the
以下の例では、L3中継時のパケットの流れを、ノード102Aがノード102C宛のパケットを送信した場合を説明する。ノード102Aから送信されたパケット(P1601)はエッジ装置300Aに到達する。エッジ装置300Aは、ネクストホップのIPアドレスに対応するMACアドレスが登録されているかを調べる。該当エントリが登録されていないため、エッジ装置300Aは、ARPリクエストパケットをVNI2仮想L2ネットワークに対してフラッディングし(P1602)、応答を待つ。ARPリクエストは、エッジ装置300Bを介して、ノード102Bへ到達し(P1603)、ノード102BがARPリプライパケット(P1604)を、エッジ装置300Bを介して、エッジ装置300Aに返信する(P1605)。
In the following example, the flow of packets during L3 relay will be described when the
エッジ装置300Aは、ARPリプライパケットを受信し、送信先ノードのMACアドレスであるMAC102Bおよび、エッジ装置300BのMACアドレスを学習する。エッジ装置300Aは、学習結果を利用し、ユーザパケットをカプセル化し拡張VXLANパケットとしてエッジ装置300Bに向け送信する(P1606)。エッジ装置300Bは、拡張VXLANパケットをデカプセル化し、デカプセル化後のユーザパケットをノード102Bへ中継し(P1607)、ノード102BがL3中継を行うことでノード102Cに到達する(P1608)。その後再度、ノード102Aがノード102C宛のパケットを送信する(P1609)場合には、エッジ装置300Aは中継先の装置を学習済みのため、アドレス解決を行わず、エッジ装置300Bに拡張VXLANパケットを中継する(P1610)。その後は、先ほどと同様に、エッジ装置300Bがデカプセル化を行いノード102Bに中継し(P1611)、ノード102BがL3中継でノード102Cに中継する。(P1612)
図3は、L3中継時にWAN500を流れる拡張VXLANパケット200のパケットフォーマットの一例およびユーザパケット218を示すものである。拡張VXLANパケットは、Outerパケットヘッダ201とInnerパケット202で構成される。Outerパケットヘッダ201は、エッジ装置300およびWAN500内の装置が拡張VXLANパケットを中継する際に使用するヘッダである。Innerパケットは、エッジ装置300での仮想L2ネットワーク101に関する情報が格納され、エッジ装置300で仮想L2ネットワーク101を流れるユーザパケットへの復元や、後述するエッジ装置300内部のテーブルの学習に使用される。
The
FIG. 3 shows an example of a packet format of the
Outerパケットヘッダ201は、宛先エッジ装置IPアドレス208、送信元エッジ装置IPアドレス209を含むOuter IPヘッダ203や、宛先UDPポート番号210を含むUDPヘッダ204、宛先VNI211や送信元VNI212を含む拡張VXLANヘッダ205で構成される。拡張VXLANヘッダ205は、通常のVXLANヘッダに対し予約領域を使い送信元VNI212を持てるよう拡張したものである。通常のVXLANヘッダと拡張VXLANヘッダの識別には、宛先UDPポート番号210が使用可能である。また、他のパケットフォーマット例としては、General Protocol Extension for VXLAN等を使用し、VXLANヘッダの後に追加のヘッダを設けることが考えられる。
The
Innerパケット202は、宛先ノードMACアドレス213と送信元ノードMACアドレス214を含むInner MACヘッダ206と、宛先ノードIPアドレス215と送信元ノードIPアドレス216を含むInner IPヘッダ207およびIPデータ部217で構成される。Inner MACヘッダ206の送信元ノードMACアドレス214は、WAN500への中継を行ったエッジ装置300に入力されたユーザパケットの送信元MACアドレスと同じ値をとる。宛先ノードMACアドレス213は、ネクストホップのノードのMACアドレスをとる。また、宛先ノードIPアドレス215、送信元ノードIPアドレス216、IPデータ部217は、ユーザパケットと同じ値が入る。
The
例として、図1のノード102Aから送信されたノード102C宛のユーザパケットをエッジ装置300A、300Bの間で拡張VXLANパケットとして中継する場合の各項目の値を説明する。この場合、宛先エッジ装置IPアドレス208は、エッジ装置300Bを指すIPアドレス300Bとなり、送信元エッジ装置IPアドレス209は、エッジ装置300Aを指すIPアドレス300Aとなる。次に宛先VNI211は、ノード102Bが属する仮想L2ネットワーク101Bを指すVNI2、送信元VNI212は、ノード102Aが属する仮想L2ネットワーク101Aを指すVNI1となる。宛先ノードMACアドレス213は、ネクストホップの装置であるノード102Bを指すMAC102B、送信元ノードMACアドレスは、ノード102Aを指すMAC102Aとなる。宛先ノードIPアドレス215は、ノード102Bを指すIP102Bとなり、送信元ノードIPアドレス216はノード102Aを指すIP102Aとなる。
As an example, the value of each item when a user packet addressed to the node 102C transmitted from the
図4は、エッジ装置300の機能構成図である。エッジ装置300は、インタフェース303A、303Bおよび、制御部301、テーブル群302を持つ。また、制御部301は、受信処理部304、経路制御部305および送信処理部306を含む。テーブル群302は、中継処理を行う前に事前に設定されるインタフェース情報テーブル400、VNIグループテーブル500、フォワーディングテーブル600と、端末情報テーブル700と、MAC学習テーブル800を含む。
FIG. 4 is a functional configuration diagram of the
インタフェース303Aは、ノード102Aと接続するインタフェースである。インタフェース303Bは、WAN500と接続している。
The
インタフェース情報テーブル400は、エッジ装置300が有するインタフェースとインタフェースが接続するネットワークの属性に応じたアクセスの種類、VNIグループ、及びVNIのとの対応付けを含む。VNIグループテーブル500は、VNIグループに属する仮想L2ネットワークを示す情報を含む。
The interface information table 400 includes an association between the interface of the
フォワーディングテーブル600は、VNIグループとそのグループに属するパケットの転送経路とを対応付ける情報を含む。特に、フォワーディングテーブル600は、通信装置のIPアドレスと通信装置が属する仮想ネットワークを識別するネットワーク識別子であるVNIとの対応付けを示す情報を含む。端末情報テーブル700は、VNIグループ毎にそのグループに属する端末に関する情報が格納される。例えば、端末に関する情報は、端末のIPアドレスまたMACアドレスである。 The forwarding table 600 includes information that associates a VNI group with a transfer path of a packet that belongs to the group. In particular, the forwarding table 600 includes information indicating a correspondence between an IP address of a communication device and a VNI that is a network identifier for identifying a virtual network to which the communication device belongs. The terminal information table 700 stores information about terminals belonging to each VNI group. For example, the information regarding the terminal is the IP address or MAC address of the terminal.
MAC学習テーブル800は、VNIとMACアドレスの組合せで出力すべきインタフェースを特定する情報を含む。 The MAC learning table 800 includes information for specifying an interface to be output by a combination of VNI and MAC address.
受信処理部304は、インタフェースで受信したパケットを処理する。受信処理部304で受信したパケットにより、経路制御部305は、テーブル群302内テーブルを更新する。送信制御部301は、受信パケットを送信する。
The reception processing unit 304 processes a packet received by the interface. The route control unit 305 updates the table in the
受信処理部304は、インタフェース303Aまたはインタフェース303Bで受信したパケットについて、受信したインタフェースに対応付けられたアクセスの種別を決定する。対応付けられたアクセスの種別は、例えば、VXLANアクセスまたはVXLANトランクである。
The reception processing unit 304 determines the access type associated with the received interface for the packet received by the
受信処理部304は、受信処理回路であってもよい。または、受信処理部304は、プロセッサを備え、プログラムにより受信処理部304の処理を実現してもよい。 The reception processing unit 304 may be a reception processing circuit. Alternatively, the reception processing unit 304 may include a processor, and the processing of the reception processing unit 304 may be realized by a program.
経路制御部305は、受信したパケットの出力先や経路を決定する。具体的には、経路制御部305は、受信したパケットの宛先IPアドレスに対応する宛先VNIを特定し、特定した宛先VNIとパケットの送信元のMACアドレスとを用いて受信したパケットをカプセル化する。また、経路制御部305は、対向のエッジ装置300から受信したパケットをデカプセル化し、デカプセル化したパケットに含まれる送信元の通信装置のMACアドレスを自装置のMACアドレスに更新し、更新したパケットを第2の通信装置宛に送信する。また、経路制御部304は、同じ仮想L2ネットワークに属するノード102から受信したパケットの宛先IPアドレスに対応する宛先VNIと宛先VNIに属する対向エッジ装置300のIPアドレスとを特定し、特定した宛先VNIを含む、特定した隣接通信装置のIPアドレスを宛先とするアドレス解決パケットをWAN500を介して対向エッジ装置300に送信する。
The route control unit 305 determines the output destination and route of the received packet. Specifically, the path control unit 305 identifies the destination VNI corresponding to the destination IP address of the received packet, and encapsulates the received packet using the identified destination VNI and the MAC address of the transmission source of the packet. . Further, the path control unit 305 decapsulates the packet received from the
また、経路制御部305は、アドレス解決パケットに対する応答パケットを受信すると、応答パケットに含まれる対向するエッジ装置300に対応する隣接通信装置のMACアドレスを隣接通信装置のIPアドレスと対応付けて端末情報テーブル700に格納し、応答パケットに含まれるエッジ装置300のIPアドレスとそのエッジ装置に隣接する通信装置のMACアドレスとを対応付けてMAC学習情報に格納し、特定した宛先VNIと第1の通信装置のMACアドレスと隣接通信装置のMACアドレスと自装置のMACアドレスと対向するエッジ装置のMACアドレスと宛先IPアドレスとを用いて、同じVNIに属するノードから受信し、対向するエッジ装置を介して接続され異なるVNIに属するノードを宛先とするパケットをカプセル化する。
In addition, when receiving a response packet for the address resolution packet, the path control unit 305 associates the MAC address of the adjacent communication device corresponding to the facing
送信処理部306は、受信したパケットの宛先のIPアドレスに対応するMACアドレスを解決するARPリクエストパケットを作成し、受信したパケットの宛先VNIに対してフラッディングを行う。 The transmission processing unit 306 creates an ARP request packet that resolves the MAC address corresponding to the destination IP address of the received packet, and performs flooding on the destination VNI of the received packet.
また、送信処理部306は、送信指示されたインタフェースに対して、パケットの送信を行う。指示されたインタフェースが、他のエッジ装置のIPアドレスだった場合は、L3中継用の拡張VXLANパケットを生成する。この時、Innerパケット202は指示されたパケットをそのまま使用する。宛先エッジ装置IPアドレスは、MAC学習テーブル800から取得した出力先情報803を使用する。送信元エッジ装置IPアドレスは、出力先情報803宛のパケット送信するIPアドレスを格納する。宛先VNI211は、フォワーディングテーブル600から取得したVNI604を使用する。送信元VNIは、インタフェース情報テーブル400から取得したVNI404を使用する。その後生成したパケットを送信する。
The transmission processing unit 306 transmits a packet to the interface instructed to be transmitted. If the instructed interface is an IP address of another edge device, an extended VXLAN packet for L3 relay is generated. At this time, the
図5は、インタフェース情報テーブル400の説明図である。インタフェース情報テーブル400は、エッジ装置300それぞれが有するインタフェース303の各種情報を保持するテーブルである。インタフェース情報テーブル400は、インタフェース番号401に対応付けて、インタフェース種別402、VNIグループ番号403、VNI404を保持する。インタフェース番号401には、インタフェース303を識別する番号が格納される。インタフェース種別402は、インタフェースの接続するネットワークを示す値である。WAN500と接続する場合、インタフェース種別402は「VXLANトランク」となり、仮想L2ネットワーク101と接続する場合は、「VXLANアクセス」となる。インタフェース種別402が、「VXLANアクセス」の場合は、VNIグループ番号403、VNI404が設定される。VNIグループ番号403は、VNIグループを識別する番号である。VNI404は、仮想L2ネットワーク101A、101Bを識別する番号である。
FIG. 5 is an explanatory diagram of the interface information table 400. The interface information table 400 is a table that holds various types of information of the interface 303 that each
図5の例では、エントリ405によって、インタフェース303AがVNIグループ1に属する仮想L2ネットワーク101Aに接続していることを示す。また、エントリ406は、インタフェース303BがWAN500と接続していることを示している。
In the example of FIG. 5, the
図6は、VNIグループテーブル500の説明図である。VNIグループテーブル500は、VNIグループに属する仮想L2ネットワークを表すテーブルである。VNIグループ番号501と、VNI番号502で構成される。図6の例では、VNIグループ1にVNI番号がVNI1である仮想L2ネットワーク101A、VNI番号がVNI2である101Bが所属していることを示している。
FIG. 6 is an explanatory diagram of the VNI group table 500. The VNI group table 500 is a table that represents a virtual L2 network belonging to the VNI group. It consists of a
図7は、フォワーディングテーブル600の説明図である。フォワーディングテーブルは、各VNIグループで、IPパケットがL3中継される経路を表す情報を含むテーブルである。フォワーディングテーブル600は、VNIグループ番号601およびIPアドレス/プレフィックス長602に関連して、ネクストホップ情報603および、VNI番号604を保持する。特に、フォワーディングテーブル600は、通信装置のIPアドレスと通信装置が属する仮想ネットワークを識別するネットワーク識別子であるVNIとの対応付けを示す情報を含む。フォワーディングテーブル600において、VNIグループ番号601はL3中継を行うVNIグループを表す値であり、IPアドレス/プレフィックス長602は、経路のIPアドレスおよびプレフィックス長を表す。ネクストホップ情報603は、VNIグループ番号に対する各経路のネクストホップの装置(隣接通信装置)を示す情報である。ここでいうネクストホップは、WAN500をVXLANでトンネリングされ接続する場合も含む。ネクストホップが宛先ノードの場合、ネクストホップ情報603の値は「Direct Connect」となり、それ以外の場合は、中継先のノードのIPアドレスが格納される。VNI番号604は、中継先の仮想L2ネットワークを特定する識別子である。
FIG. 7 is an explanatory diagram of the forwarding table 600. The forwarding table is a table including information indicating a route through which an IP packet is relayed by L3 in each VNI group. The forwarding table 600 holds the
図7の例では、エントリ605、606、607は、全てVNIグループ1に関する経路の情報を表している。エントリ605は、IPアドレス/プレフィックス101Aが、VNI番号がVNI1で表される仮想L2ネットワーク101Aで接続されていることを示す。エントリ606は、IPアドレス/プレフィックス101Bが、VNI2で表される仮想L2ネットワーク101Bで接続されていることを示す。エントリ607は、IPアドレス/プレフィックス101が、VNI番号がVNI2に属しIP102Bを持つノード102Bを経由してつながっていることを示す。
In the example of FIG. 7,
図8は、端末情報テーブル700の説明図である。端末情報テーブル700は、各VNIグループ上でARP等を用いてアドレス解決されたIPアドレスおよびMACアドレスを表す。端末情報テーブル700は、VNIグループ番号701とIPアドレス702に関連して、MACアドレス703を保持する。また、端末情報テーブル700は、経路制御部305により、アドレス解決応答を受信した際に、更新される。
FIG. 8 is an explanatory diagram of the terminal information table 700. The terminal information table 700 represents IP addresses and MAC addresses that have been address-resolved using ARP or the like on each VNI group. The terminal information table 700 holds a
図8の例では、エントリ704で、VNIグループ1に属し、IPアドレスがIP102Aである装置が、MAC102AのMACアドレスを示し、エントリ705で、VNIグループ1に属し、IPアドレスがIP102Bである装置が、MAC102BのMACアドレスを示す。なお、端末情報テーブル700の初期状態は、図8からエントリ705が削除されている状態である。
In the example of FIG. 8, an
図9は、MAC学習テーブル800の説明図である。MAC学習テーブル800は、仮想L2ネットワークに所属する端末が、どのインタフェースもしくは、エッジ装置を通じて接続しているかを表すテーブルである。MAC学習テーブル800は、VNI番号801およびMACアドレス802に関連して、出力先情報803を記憶する。出力先情報803は、VNI番号801およびMACアドレス802で表されるノードが直接インタフェースを通じてつながっている場合は、そのインタフェースを示すインタフェース番号が格納されWAN500上のVXLANトンネリングで接続している場合は、トンネルの出口となるエッジ装置のIPアドレスが格納される。MAC学習テーブル800は、受信処理部304でパケット受信時に、経路制御部を通じて更新される。通常のVXLANとは異なり、MAC学習テーブル800を保持するエッジ装置300が、参加していない仮想L2ネットワーク101に関する情報も蓄えられる。
FIG. 9 is an explanatory diagram of the MAC learning table 800. The MAC learning table 800 is a table showing which interface or edge device is connected to a terminal belonging to the virtual L2 network. The MAC learning table 800 stores
図9の例では、エントリ804によって、VNI番号がVNI1である仮想L2ネットワーク101Aに属するMAC102Aを持つノードであるノード102Aが、インタフェース303Aを介して接続していることを表している。エントリ805は、エッジ装置300Aが所属しないVNI番号がVNI2である仮想L2ネットワーク101Bに関するエントリである。エントリ805は、VNI番号がVNI2である仮想L2ネットワーク101Bに所属し、MAC102BのMACアドレスを持つノード102Bが、IP300Bが割り当てられるエッジ装置300Bを介して接続していることを示している。なお、MAC学習テーブル800の初期状態は、が図9からエントリ805が削除されている状態とする。 図10は、パケット受信時の受信処理部304で行われるパケット受信処理の処理内容を示したフローチャートである。エッジ装置300は、インタフェース303A、303Bからパケットを受信すると、受信処理部304でパケット受信処理を開始する。(S901)まず、受信処理部304は、受信したインタフェース303のインタフェース番号をインタフェース情報テーブル400上で検索する。検索の結果該当したエントリよりインタフェース種別402を取得する。インタフェース種別402が「VXLANアクセス」の場合(S903)、さらにエントリよりインタフェースの所属するVNIグループ番号403、VNI404を取得し、受信処理部304の中継処理(S1100)を呼び出す。インタフェース種別402が「VXLANトランク」の場合(S903)、受信処理部304のVXLANデカプセル化処理(S1000)を呼び出す。
In the example of FIG. 9, the
図11は、経路制御部305で行われるVXLANデカプセル化処理の処理内容を示したフローチャートである。この処理は、パケットを受信したインタフェースの種別が、「VXLANトランク」である、つまりWAN500と接続しているインタフェースだった場合に実行される。経路制御部305は、受信パケットがVXLANパケットもしくは拡張VXLANパケットかどうか確認を行う(S1002)。具体的に、経路制御部305は、受信パケットに含まれる宛先エッジ装置MACアドレス213、宛先ノードIPアドレス215が自装置のもの判定を行い、さらに受信パケットに含まれる宛先UDPポート番号210を確認することで、VXLANもしくは拡張VXLANパケットであるか確認する。
FIG. 11 is a flowchart showing the processing contents of the VXLAN decapsulation processing performed by the path control unit 305. This process is executed when the type of the interface that received the packet is “VXLAN trunk”, that is, an interface connected to the
経路制御部305は、拡張VXLANパケットまたはVXLANパケットの場合、MAC学習テーブル800を更新する(S1003)。具体的には、経路制御部305は、VNI番号801が送信元VNI211、MACアドレス802が送信元ノードMACアドレス214のエントリを作成または、更新し、出力先情報803の値を送信元エッジ装置IPアドレス215として記憶する。VXLANパケットの場合は、VNI番号801として受信パケットに含まれる宛先VNI210を記憶する。
In the case of an extended VXLAN packet or a VXLAN packet, the path control unit 305 updates the MAC learning table 800 (S1003). Specifically, the path control unit 305 creates or updates an entry in which the
次に、経路制御部305は、受信パケットのOuter IPヘッダ201を外し、ユーザパケットを生成する(ステップ1004)。経路制御部305は、パケットが拡張VXLANパケットの場合、受信パケットの送信元ノードMACアドレス214を自装置のMACアドレスに書き換える。
Next, the path control unit 305 removes the
最後に、送信元VNI212と生成したユーザパケットを引数に中継処理(S1100)を呼び出す。
Finally, the relay process (S1100) is called with the
経路制御部305は、拡張VXLANパケットまたはVXLANパケットのどちらにも該当しない場合、処理を終了し(S1005)パケットを破棄する。以上が図11のフローチャートの説明である。 If the route control unit 305 does not correspond to either the extended VXLAN packet or the VXLAN packet, the route control unit 305 ends the processing (S1005) and discards the packet. The above is the description of the flowchart of FIG.
図12は、経路制御部305が行う中継処理の処理内容を示したフローチャートである。この処理では、中継対象のユーザパケットが、L2中継で中継すべきパケットか、L3中継で中継すべきパケットか、もしくは、制御パケットか判別し、それぞれの場合の処理を行う。 FIG. 12 is a flowchart showing the processing contents of the relay processing performed by the route control unit 305. In this processing, it is determined whether the user packet to be relayed is a packet to be relayed by L2 relay, a packet to be relayed by L3 relay, or a control packet, and processing in each case is performed.
中継処理の開始後(S1101)、経路制御部305は、宛先MACアドレス213が自装置のものか判定する(S1102)。経路制御部305は、もし、他装置宛のパケットだった場合、L2中継処理(S1103)を行う。ここでいうL2中継処理(S1103)は、自装置のポートからL2パケットを送信する場合と、VXLANで他装置に中継する場合を含む。
After the start of relay processing (S1101), the path control unit 305 determines whether the
自装置宛のパケットだった場合、経路制御部305は、パケットがARPパケット等の自装置で処理する必要があるプロトコルのパケットかどうか判定し(S1104)、そのプロトコルに合わせた動作をする。例えば、経路制御部305は、ARPリプライパケットだった場合、端末情報テーブルにそのARPで解決した、IPアドレス及びMACアドレスの組合せと、受信したパケットに含まれるVNIの属するVNIグループを登録する(S1105)。 If the packet is addressed to the own device, the path control unit 305 determines whether the packet is a packet of a protocol that needs to be processed by the own device such as an ARP packet (S1104), and operates according to the protocol. For example, if the packet is an ARP reply packet, the path control unit 305 registers the combination of the IP address and the MAC address resolved by the ARP and the VNI group to which the VNI included in the received packet belongs in the terminal information table (S1105). ).
中継対象のパケットが通常のIPパケットだった場合、経路制御部305は、L3中継処理(S1200)を実施する。図13および図14にL3中継処理のフローチャートを示す。L3中継処理では、まず、経路制御部305は、VNIグループテーブル500を参照し、受信したパケットに含まれるVNIグループ番号403を検索する(S1202)。該当するVNIグループがない場合(S1203)、中継処理を終了する。(S1304)次に、S1202の検索結果、経路制御部305は、取得したVNIグループとパケットの宛先IPアドレス215をフォワーディングテーブル600で検索し、VNIグループ番号601が一致し、IPアドレス/プレフィックス長602が最長一致したエントリのネクストホップ情報603およびVNI番号604を取得する(S1204)。経路制御部305は、一致するエントリがなかった場合は、中継処理を終了する(S1304)。次に、経路制御部305は、端末情報テーブルの検索を行う(S1206)。この時、VNIグループ番号701として、VNIグループテーブルから取得したVNIグループ番号502を、IPアドレス702として、ネクストホップ情報603が、「Direct Connect」の場合は、宛先IPアドレス215を、そうでない場合、ネクストホップ情報603記載のIPを用いて検索する。該当するエントリがなかった場合(S1207)、経路制御部305は、送信処理部に該当IPへのARPの送信を指示し、アドレス解決が完了するまで待機する(S1400)。エントリがあった場合(S1207)、もしくはアドレス解決が完了した場合、経路制御部305は、MACアドレス703を取得し、それと宛先VNIでMAC学習テーブル800を検索する。該当するエントリがなかった場合(S1302)、受信処理部304は、送信制御部にARPの送信を指示アドレス解決が完了するまで待機する(S1400)。該当するエントリがあった場合は、受信処理部304は、出力先情報803を取得し、ユーザパケットの宛先MAC213をその値に書き換え(S1303)、その後送信処理部306に出力先情報803から宛先VNIへのユーザパケットの送信処理を指示する(S1500)。
If the packet to be relayed is a normal IP packet, the path control unit 305 performs L3 relay processing (S1200). 13 and 14 show a flowchart of the L3 relay process. In the L3 relay processing, first, the path control unit 305 searches the
次にエッジ装置300Aに着目して先ほどの図1、図2の動作を説明する。
Next, focusing on the
ノード102Aからノード102C宛のパケット(P1601)をインタフェース303Aで受信したエッジ装置300Aは、受信処理部304に渡し、パケット受信処理を呼び出す。(S901)パケット受信処理の中で、インタフェース303Aのインタフェース番号IF1をインタフェース情報テーブル400上で検索し、エントリ405が該当する。(S902)インタフェース種別402が「VXLANアクセス」のため、受信パケットをユーザパケットとして扱い、VNIグループ番号403およびVNI404を取り出し、VNIグループ番号403およびVNI404、受信パケット(P1602)を引数に中継処理(S1100、S1101)を呼び出す。中継処理では、まず受信パケット218の宛先MACアドレス220が自装置宛のMAC1か、確認する。(S1102)自装置宛であるため、次にパケットがIPパケットであることを確認し(S1104)、L3中継処理(S1200、S1201)を呼び出す。エッジ装置300AはL3処理の中で、VNIグループテーブル500をVNI1で検索し、エントリ503からVNIグループ番号501としてVNIグループ1を取得する。(S1202、S1203)次に、ユーザパケット218から宛先IPノードアドレス215の値としてIP102Cを取り出し、フォワーディングテーブル600内で検索する。(S1204)その結果、エントリ697が該当し、ネクストホップ情報603からネクストホップのIPアドレスであるIP102Bと、VNI番号604からネクストホップの属する仮想L2ネットワークを示すVNI2内にあることを確認する。(S1205)
次に、エッジ装置300Aの受信処理部304は取得したVNIグループ1およびIP102Bを端末情報テーブル700内で検索する。(S1206)結果、IP102Bに対応するエントリがないため、アドレス解決が必要と判断し(S1207)、送信処理部306にVNI2上でIP102Bに対するARP送信を指示する。(S1400、S1401)送信処理部306は、IP102Bをアドレス解決するため、VXLANでカプセル化されたARPリクエストパケットP1602を生成し(S1402)、ネクストホップが属するVNI2内でブロードキャストするため、VNI2のマルチキャストアドレス宛に送信する(S1403)。
The
Next, the reception processing unit 304 of the
送信したARPに対するリプライP1604をインタフェース303Bで受信するすると、受信処理部304に渡し、パケット受信処理を呼び出す。インタフェース情報テーブルの検索の結果(S902)、エントリ406が該当し、インタフェース303Bのインタフェース種別が「VXLANトランク」と分かり(S903)、VXLANデカプセル化処理が呼び出される。(S1000、S1001)パケット種別を確認し、VXLANパケットのため(S1002)、続けてMAC学習テーブルの更新(S1003)、デカプセル化(S1004)、中継処理(S1100)が呼び出される。MAC学習テーブルの更新(S1003)では、宛先VNI211よりVNI2、送信元ノードMACアドレス214よりMAC102B、送信元エッジ装置IPアドレス209よりIP300Bを取得し、図9のエントリ805のようなエントリを登録する。中継処理を開始すると(S1101)、パケットの宛先ノードMACアドレスが自装置を指すMAC300Bであることを確認する。(S1102)その後、パケットがARPリプライパケットであることを確認し(S1104)、ARPリプライパケットに記載されている、図8のエントリ705のようなIP102Bと、MAC102Bの組み合わせを端末情報テーブル700に記録する。(S1105)。
When the reply P1604 corresponding to the transmitted ARP is received by the interface 303B, it is passed to the reception processing unit 304 and the packet reception process is called. As a result of the search of the interface information table (S902), the
端末情報テーブルが更新されたため中継処理にて、再度、端末情報テーブルの確認を行う。(S1206)学習したエントリ705が該当するため(S1207)、続いて宛先VNIであるVNI2と宛先MACアドレスであるMAC102Bを、MAC学習テーブル800上で検索し(S1301)学習したエントリ805が該当する。(S1302)その後、パケットの宛先MACアドレスをエントリ705から取得したMAC300Bに書き換え、送信制御部306にパケット送信を指示する。(S1500、S1501)送信制御306は、宛先エッジ装置IPアドレスをIP300B、送信元エッジ装置IPアドレスをIP102A、宛先VNIをVNI2、送信元VNIをVNI1とした拡張VXLANパケットを生成し、送信する。
Since the terminal information table has been updated, the terminal information table is confirmed again in the relay process. (S1206) Since the learned
その後、ノードAがノードCに再度パケットP1609を送る場合には、エッジ装置300Aは、端末情報テーブル700から、VNIグループ1およびIP102Bに対するエントリ705を得ることができる。同様にMAC学習テーブル800からも、MAC102Bに対するエントリ805を得ることができるため、アドレス解決を行わず、パケットP1610を生成し送信する。
Thereafter, when the node A sends the packet P1609 to the node C again, the
以上の動作を行うことによる効果は、エッジ装置300AのL3中継に関するMAC学習テーブル800の内容を削減できることである。エッジ装置300Aは、L3中継で必要になった場合のみ、ノード102Bがエッジ装置300Bに接続されていることを学習することになる。仮想L2ネットワーク101Bに属する他のノード100についてのエントリを学習することがなくなるため、エントリを削減できる。
The effect of performing the above operation is that the contents of the MAC learning table 800 regarding the L3 relay of the
次に、ノード102Bがエッジ装置300Bからエッジ装置300Cに移動した場合のパケットの流れを図15に、シーケンス図を図16に示す。エッジ装置300AのMAC学習テーブルの初期状態を図10に示す。
Next, FIG. 15 shows a packet flow when the
ノード102Bが移動し、エッジ装置300Bから同一仮想L2ネットワーク101Bに属する他のエッジ装置300Cに移動した場合、エッジ装置300Cとノード102Bは、物理ネットワーク103Cを介して接続され、エッジ装置300A内のMAC学習テーブル800で学習しているノード102Bに関するエントリが変更しなくてはならないという課題がある。ノード102Bに関するエントリが変更されない場合、エッジ装置300Aからノード102B宛のパケットをL3中継で中継する際に、移動前に接続していたエッジ装置300Bに中継してしまう。このような状況は、ノード102Bが仮想マシンであり、ライブマイグレーションなどで仮想マシンを動作させる物理サーバが変わった場合などに起こる。
When the
本実施例では、上記のような課題を解決する手段として、拡張VXLANパケット200に送信元のノード102のMACアドレスとVNIを付与することで、拡張VXLANパケット200を受信したエッジ装置300で、送信元のエッジ装置300と送信元のノード102の対応を学習させる。
In the present embodiment, as means for solving the above-described problems, the MAC address and VNI of the
パケットP2001〜P2004は、エッジ装置300Aがノード102Bの移動を検知していない時点でのエッジ装置300Aのパケットの流れである。エッジ装置300Aは、移動したノード102Bからのパケットを中継することで、移動を検知し、MAC学習テーブル800を更新する。そのため、ノード102Bが移動してから、エッジ装置300Aを経由した中継を行うか、タイムアウト等でテーブルのエントリが削除されるまで、エッジ装置300A内のMAC学習テーブル800は更新されない。この状況下で、ノード102Aからノード102B宛のパケット(P2001)を送信すると、エッジ装置300Aで拡張VXLANパケットにカプセル化され、エッジ装置300Bへと中継され(P2002)、エッジ装置300Bで通常のVXLANパケットに詰め替えられエッジ装置300Cへ中継され(P2003)、ノード102Bへと送信される。(P2004)
パケットP2005〜P2007は、ノード102Bからノード102A宛のパケットを送信した場合に流れるパケットである。エッジ装置300Cが、ノード102Bから送信されたパケット(P2005)を受信すると、拡張VXLANパケットにカプセル化し、エッジ装置300Aへ中継する。(P2006)エッジ装置300Aは、拡張VXLANパケットを受信すると、MAC学習テーブル800を更新し、デカプセル化を行い、ノード102Aへ中継する。(P2007)MAC学習テーブル800の更新により、ノード102Bとエッジ装置300Cを対応付けることができる。
Packets P2001 to P2004 are a packet flow of the
Packets P2005 to P2007 are packets that flow when a packet addressed to the
テーブル更新後、ノード102Bからノード102C宛のパケット(P2008)を送信すると、エッジ装置300Aから、拡張VXLANパケットとしてエッジ装置300Cへと中継され(P2009)、ノード102Bへと中継される。(P2010)
パケットP2006を受信した際のエッジ装置300Aの動作について説明する。エッジ装置300Aは、パケット受信処理を開始し(901)、受信インタフェースの情報をインタフェース情報テーブル400で確認し(S902、S903)、VXLANデカプセル化処理を開始する。(S1000、S1001)受信パケットのパケット種別を確認し、拡張VXLANであることが分かる。(S1002)次にMAC学習テーブル800に対して、VNI番号801が受信パケットの送信元VNI212であるVNI2を、MACアドレス802が送信元ノードMACアドレス216であるMAC102Bを、出力先情報803が送信元エッジ装置IPアドレス209である、IP300Cを設定したエントリを登録する。同じVNI番号801およびMACアドレス802のエントリ805があるため、そのエントリが上書きされる。その後、拡張VXLANパケットをデカプセル化して、Innerパケット202を取り出す。(S1004)この際、送信元ノードMACアドレスを自装置のMAC2に書き換える。その後中継処理を呼び出す。(S1100、S1101)宛先MACアドレスが自装置のものか確認を行い(S1102)、他宛であるのでL2中継処理を行い(S1103)、ノード102Aと接続するインタフェース303Aより送信する。
After updating the table, when a packet addressed to the node 102C (P2008) is transmitted from the
The operation of the
パケットP2002を受信した際のエッジ装置300Bについても前述したパケットP2006を受信した際のエッジ装置300Aと同様の動作を行い、L2中継処理を呼び出す(S1103)。ここで、MAC学習テーブルに記載されている出力先情報803がエッジ装置300CのIPアドレスであるIP300Cを指しているため、IP300Cに通常のVXLANとして、中継する。
The
この動作の効果は、ノード102の接続するエッジ装置300が変更した場合でも、ノード102がパケットを送信することで、それを受信したエッジ装置300のMAC学習テーブル700の情報を更新することである。
The effect of this operation is to update the information in the MAC learning table 700 of the
本実施例の一形態によると、例えば、エッジ装置間の処理で仮想L2ネットワーク間のL3中継を行うことにより、L3中継装置を追加してL3中継処理を行う場合とくらべ、中継時の遅延を抑えられる。 According to one form of the present embodiment, for example, by performing L3 relay between virtual L2 networks by processing between edge devices, the delay at the time of relay is reduced compared to when L3 relay processing is performed by adding an L3 relay device. It can be suppressed.
本実施例の一形態によると、例えば、各エッジ装置で記憶するMAC学習テーブルのエントリは、宛先となるノードに関するものを管理すればよいので、MAC学習テーブル700のエントリ数が削減される。 According to one form of the present embodiment, for example, the entries in the MAC learning table stored in each edge device need only be managed with respect to the destination node, so the number of entries in the MAC learning table 700 is reduced.
本実施例の一形態によると、例えばノードが、移動した場合、例えば、ノードが通信中にライブマイグレーション等で接続するエッジ装置を変更した場合でも、通信が可能であり、移動したノードがL3中継を行うことで、エッジ装置のMAC学習テーブルを更新することが可能となる。 According to one form of the present embodiment, for example, when a node moves, for example, even when the edge device connected by live migration or the like is changed while the node is communicating, communication is possible, and the moved node is relayed by L3. By performing the above, it becomes possible to update the MAC learning table of the edge device.
500 WAN
100A、100B 物理ネットワーク
101A、101B 仮想L2ネットワーク
102A、102B、102C ノード
301 制御部
302 テーブル群
303A、303B インタフェース
304 受信処理部
305 経路制御部
306 送信処理部
500 WAN
100A,
Claims (7)
一つの仮想ネットワークグループとして関連づけられる第1の仮想ネットワークと第2の仮想ネットワークとは、第3の仮想ネットワークを介して接続され、
第1の中継装置は、
パケットの宛先の通信装置のIPアドレスと宛先の通信装置が属する仮想ネットワークを識別するネットワーク識別子との対応付けを示す転送情報に予め記憶し、
第1の仮想ネットワークに属する第1の通信装置から第2の仮想ネットワークに属する第2の通信装置宛のパケットを受信すると、転送情報を参照して、受信したパケットの宛先IPアドレスに対応する宛先VNIを特定し、特定した宛先VNIと送信元の第1の通信装置のMACアドレスとを用いて、受信したパケットをカプセル化し、カプセル化したパケットを第3の仮想ネットワークに送信し、
第2の中継装置は、
第3の仮想ネットワークから第2の通信装置宛のパケットを受信すると、受信したパケットに含まれる第1の通信装置のMACアドレスを保持し、受信したパケットをデカプセル化し、デカプセル化したパケットに含まれる第1の通信装置のMACアドレスを第2の中継装置のMACアドレスに更新し、更新したパケットを第2の通信装置宛に送信する
通信システム。 A first relay device belonging to the first virtual network, and a second relay device belonging to the second virtual network,
The first virtual network and the second virtual network associated as one virtual network group are connected via the third virtual network,
The first relay device
Pre-stored in transfer information indicating the association between the IP address of the destination communication device of the packet and the network identifier identifying the virtual network to which the destination communication device belongs;
When a packet addressed to the second communication device belonging to the second virtual network is received from the first communication device belonging to the first virtual network, the destination corresponding to the destination IP address of the received packet is referred to by referring to the transfer information Identify the VNI, encapsulate the received packet using the identified destination VNI and the MAC address of the first communication device of the transmission source, send the encapsulated packet to the third virtual network,
The second relay device
When a packet addressed to the second communication device is received from the third virtual network, the MAC address of the first communication device included in the received packet is held, and the received packet is decapsulated and included in the decapsulated packet. A communication system in which the MAC address of the first communication device is updated to the MAC address of the second relay device, and the updated packet is transmitted to the second communication device.
第2の通信装置宛のパケットを受信すると、受信したパケットの宛先IPアドレスに対応する宛先VNIと隣接通信装置のIPアドレスとを特定し、特定した宛先VNIを含む、特定した隣接通信装置のIPアドレスを宛先とするアドレス解決パケットを第3の仮想ネットワークに送信し、アドレス解決パケットに対する応答パケットを受信すると、応答パケットに含まれる隣接通信装置のMACアドレスを隣接通信装置のIPアドレスと対応付けて保持し、応答パケットに含まれる第2の中継装置のMACアドレスを隣接通信装置のMACアドレスと対応付けてMAC学習を実行し、特定した宛先VNIと第1の通信装置のMACアドレスと隣接通信装置のMACアドレスと第1の中継装置のMACアドレスと第2の通信装置のMACアドレスと宛先IPアドレスとを用いて、受信した第2の通信装置宛のパケットをカプセル化する、通信システム。 The communication system according to claim 1, wherein the first relay device is:
When the packet addressed to the second communication device is received, the destination VNI corresponding to the destination IP address of the received packet and the IP address of the adjacent communication device are specified, and the IP of the specified adjacent communication device including the specified destination VNI When an address resolution packet addressed to the address is transmitted to the third virtual network and a response packet to the address resolution packet is received, the MAC address of the adjacent communication device included in the response packet is associated with the IP address of the adjacent communication device. The MAC address of the second relay device included in the response packet is associated with the MAC address of the adjacent communication device to perform MAC learning, and the specified destination VNI, the MAC address of the first communication device, and the adjacent communication device MAC address, MAC address of the first relay device, and MAC address of the second communication device Using the scan and destination IP address, it encapsulates the packets of the second communication device addressed with the received communication systems.
前記第1の中継装置は、前記第1の仮想ネットワークと一つの仮想ネットワークグループとして関連づけられる第2の仮想ネットワークに属する第2の中継装置と第3の仮想ネットワークを介して接続され、
パケットの宛先の通信装置のIPアドレスと宛先の通信装置が属する仮想ネットワークを識別するネットワーク識別子との対応付けが予め記憶されるメモリと、
第1の仮想ネットワークに属する第1の通信装置から第2の仮想ネットワークに属する第2の通信装置宛のパケットを受信すると、転送情報を参照して、受信したパケットの宛先IPアドレスに対応する宛先VNIを特定し、特定した宛先VNIと送信元の第1の通信装置のMACアドレスとを用いて、受信したパケットをカプセル化し、カプセル化したパケットを第3の仮想ネットワークを介して前記第2の中継装置に向けて送信する、ことを特徴とする通信システム。 A communication system including a first relay device belonging to a first virtual network,
The first relay device is connected via a third virtual network with a second relay device belonging to a second virtual network associated with the first virtual network as one virtual network group,
A memory that stores in advance a correspondence between an IP address of a destination communication device of a packet and a network identifier that identifies a virtual network to which the destination communication device belongs;
When a packet addressed to the second communication device belonging to the second virtual network is received from the first communication device belonging to the first virtual network, the destination corresponding to the destination IP address of the received packet is referred to by referring to the transfer information The VNI is identified, the received packet is encapsulated using the identified destination VNI and the MAC address of the first communication device of the transmission source, and the encapsulated packet is transmitted to the second through the third virtual network. A communication system characterized by transmitting to a relay device.
前記第2の中継装置をさらに有し、
前記中継装置は、第3の仮想ネットワークから第2の通信装置宛のパケットを受信すると、受信したパケットに含まれる第1の通信装置のMACアドレスを保持し、受信したパケットをデカプセル化し、デカプセル化したパケットに含まれる第1の通信装置のMACアドレスを第2の中継装置のMACアドレスに更新し、更新したパケットを第2の通信装置宛に送信する
通信システム。 The communication system according to claim 1,
And further comprising the second relay device,
When the relay device receives a packet addressed to the second communication device from the third virtual network, the relay device holds the MAC address of the first communication device included in the received packet, decapsulates the received packet, and decapsulates the packet. A communication system for updating the MAC address of the first communication device included in the packet to the MAC address of the second relay device and transmitting the updated packet to the second communication device.
前記第1の仮想ネットワーク及び前記第2の仮想ネットワークは、VLANであって、前記第3の仮想ネットワークは、VXLANであることを特徴とする、通信システム。 The communication system according to claim 5, wherein
The communication system, wherein the first virtual network and the second virtual network are VLANs, and the third virtual network is a VXLAN.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015190605A JP2017069657A (en) | 2015-09-29 | 2015-09-29 | Communication system or communication apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015190605A JP2017069657A (en) | 2015-09-29 | 2015-09-29 | Communication system or communication apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017069657A true JP2017069657A (en) | 2017-04-06 |
Family
ID=58492948
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015190605A Pending JP2017069657A (en) | 2015-09-29 | 2015-09-29 | Communication system or communication apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017069657A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2023509532A (en) * | 2020-01-08 | 2023-03-08 | 華為技術有限公司 | Packet transmission method, routing entry generation method, device and storage medium |
-
2015
- 2015-09-29 JP JP2015190605A patent/JP2017069657A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2023509532A (en) * | 2020-01-08 | 2023-03-08 | 華為技術有限公司 | Packet transmission method, routing entry generation method, device and storage medium |
JP7469479B2 (en) | 2020-01-08 | 2024-04-16 | 華為技術有限公司 | Packet transmission method, routing entry generation method, device, and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3863237B1 (en) | Packet forwarding method, packet transmission device, and packet reception device | |
CN109257265B (en) | Flooding suppression method, VXLAN bridge, gateway and system | |
US10484203B2 (en) | Method for implementing communication between NVO3 network and MPLS network, and apparatus | |
CN111510387B (en) | Data forwarding method and related device | |
US7185107B1 (en) | Redirecting network traffic through a multipoint tunnel overlay network using distinct network address spaces for the overlay and transport networks | |
JP4598859B2 (en) | Relay network system and terminal adapter device | |
KR101146139B1 (en) | Method for providing mobility of mobile node in packet transport network, packet transport network system and Gateway switch | |
US20190014040A1 (en) | Edge network node and method for configuring a service therein | |
US20210399985A1 (en) | Method for forwarding packet in network, network node, and network system | |
EP4131872A1 (en) | Multicast traffic transmission method and apparatus, communication node, and storage medium | |
JP2005510122A (en) | IPv6 mobile router support | |
US20160226753A1 (en) | Scheme for performing one-pass tunnel forwarding function on two-layer network structure | |
US10432578B2 (en) | Client address based forwarding of dynamic host configuration protocol response packets | |
JPWO2006093299A1 (en) | Tunneling device, tunnel frame sorting method used therefor, and program therefor | |
US10454882B2 (en) | DHCP in layer-3 overlay with anycast address support and network address transparency | |
WO2012083657A1 (en) | Packet processing method, system and customer premises equipment | |
JP2007194763A (en) | Network system | |
JP2003092599A (en) | Router and communication network device | |
CN111988223A (en) | Virtual machine migration method and network system | |
CN105917617A (en) | Single hop overlay architecture for line rate performance in campus networks | |
EP3574631A1 (en) | Using location identifier separation protocol to implement a distributed gateway architecture for 3gpp mobility | |
JP6629681B2 (en) | Switch device and relay system | |
CN113726653B (en) | Message processing method and device | |
CN110752989A (en) | Method and device for forwarding east-west traffic | |
KR20150136184A (en) | Method and Apparatus for inter-domain routing based on Autonomous System architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20170119 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20170125 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20180223 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20180314 |