WO2015081734A1 - 一种在VxLAN中发送ARP报文发送方法、VTEP及VxLAN控制器 - Google Patents

一种在VxLAN中发送ARP报文发送方法、VTEP及VxLAN控制器 Download PDF

Info

Publication number
WO2015081734A1
WO2015081734A1 PCT/CN2014/085157 CN2014085157W WO2015081734A1 WO 2015081734 A1 WO2015081734 A1 WO 2015081734A1 CN 2014085157 W CN2014085157 W CN 2014085157W WO 2015081734 A1 WO2015081734 A1 WO 2015081734A1
Authority
WO
WIPO (PCT)
Prior art keywords
vtep
destination
address
vxlan
source
Prior art date
Application number
PCT/CN2014/085157
Other languages
English (en)
French (fr)
Inventor
刘万来
熊志强
宋宇
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2015081734A1 publication Critical patent/WO2015081734A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]

Definitions

  • the present invention relates to the field of computer network communication, and in particular, to a method for transmitting an ARP ⁇ message in a VxLAN, a VTEP, and a VxLAN controller. Background technique
  • VxLAN virtual scalable local area network
  • the source virtual machine sends an Address Resolution Protocol (ARP) packet to request the Media Acces s Control (MAC) address of the destination VM;
  • ARP Address Resolution Protocol
  • MAC Media Acces s Control
  • the source VxLAN tunnel terminal (VEPLAN Tunnel Endpoint, VTEP) corresponding to the source VM is based on the ARP packet, constructs an Interne t Group Management Protocol (IGMP) message, and then sends the IGMP message to the If the destination VTEP receives the IGMP message, the destination VTE2 parses the IGMP message and broadcasts the analysis result to the destination VM corresponding to the destination VTEP for the destination VM. After receiving the analysis result, the MAC address of the MAC address is encapsulated by the destination VTEP2, and then fed back to the source VM.
  • IGMP Interne t Group Management Protocol
  • the source VTEP is used to encapsulate the packet sent by the source VM into a VxLAN packet, or to decapsulate the VxLAN packet to the source VM.
  • the destination VTEP is used to encapsulate the packet sent by the destination VM into a VxLAN packet, or to report the VxLAN packet. The encapsulation is sent to the destination VM.
  • the source VTEP1 In the process of implementing the above information transmission, at least the following problems exist in the prior art: if the source VTEP wants to obtain the MAC address of the destination VM, the source VTEP1 must send IGMP messages in multiple multicast groups to obtain The destination VTEP corresponds to the MAC address of the destination VM2. As a result, the source VTEP sends a large amount of information transmission bandwidth and uses a large amount of data traffic, thus causing waste of resources.
  • the embodiment of the invention provides a method for transmitting ARP packets, a VTEP and a VxLAN controller in a VxLAN, which can solve the problem of establishing a large amount of information transmission bandwidth during the establishment of communication between virtual machines based on the VxLAN virtualized network. A lot of traffic, which causes a waste of resources.
  • an embodiment of the present invention provides a method for sending an address resolution protocol ARP text in a virtual scalable local area network VxLAN, where the virtual scalable local area network includes a source VxLAN tunnel endpoint VTEP, a target VTEP, and a VxLAN controller,
  • the source VTEP is for managing communication of the source virtual machine VM running on the source server in the VxLAN
  • the destination VTEP is for managing communication of the destination VM running on the destination server in the VxLAN
  • the VxLAN controller is used for Maintaining a mapping relationship between an Internet Protocol IP address of the source VTEP and an IP address of the source VM, and a mapping relationship between an IP address of the destination VTEP and an IP address of the destination VM, the VxLAN controller, the source The VTEP and the destination VTEP communicate with each other, and the method includes:
  • the VxLAN controller receives the query request sent by the source VTEP to obtain the IP address of the destination VTEP; wherein the query request carries the IP address of the destination VM; wherein, the IP address of the destination VM is The source VTEP is obtained from the ARP packet sent by the source VM;
  • the VxLAN controller Determining, by the VxLAN controller, an IP address of the destination VTEP according to a mapping relationship between an IP address of the destination VM and an IP address of the destination VM and an IP address of the destination VM; the VxLAN controller Sending, to the source VTEP, an IP address query response carrying the destination VTEP, so that the source VTEP encapsulates the ARP ⁇ ______ VTEP.
  • the method before the VxLAN controller receives the query request sent by the source VTEP, the method further includes:
  • the VxLAN controller acquires a mapping relationship between an IP address of the destination VM and an IP address of the destination VTEP.
  • the method also includes:
  • the VxLAN controller receives the updated mapping relationship, where the updated mapping relationship is a mapping relationship between the destination VM and the IP address of the VTEP to which the destination VM belongs.
  • the VTEP to which the destination VM currently belongs is the destination VTEP.
  • an embodiment of the present invention provides a method for sending an address resolution protocol ARP text in a virtual scalable local area network VxLAN, where the virtual scalable local area network includes a source VxLAN tunnel endpoint VTEP, a target VTEP, and a VxLAN controller,
  • the source VTEP is for managing communication of the source virtual machine VM running on the source server in the VxLAN
  • the destination VTEP is for managing communication of the destination VM running on the destination server in the VxLAN
  • the VxLAN controller is used for Maintaining a mapping relationship between an Internet Protocol IP address of the source VTEP and an IP address of the source VM, and a mapping relationship between an IP address of the destination VTEP and an IP address of the destination VM, the VxLAN controller, the source The VTEP and the destination VTEP communicate with each other, and the method includes:
  • the source VTEP receives the ARP ⁇ text of the source virtual machine VM, where the ARP ⁇ text is used to request a medium access control MAC address of the destination VM, and the ARP ⁇ text carries the IP of the destination VM Address
  • the source VTEP obtains an IP address of the destination VM carried in the ARP packet
  • the source VTEP sends a query request to the VxLAN controller to obtain the destination VTEP
  • the query request carries an IP address of the destination VM
  • the source VTEP obtains the IP address of the destination VTEP from the VxLAN controller; the source VTEP encapsulates the ARP file according to the IP address of the destination VTEP to generate a VxLAN message;
  • the source VTEP sends the VxLAN ⁇ message to the destination VTEP.
  • a virtual scalable local area network (VxLAN) controller is applied to a VxLAN, where the VxLAN includes a source VxLAN tunnel endpoint VTEP, a target VTEP, and a VxLAN controller, where the source VTEP is used to manage the source server. Communication of the running source virtual machine VM in the VxLAN, the destination VTEP is used to manage the communication of the destination VM running on the destination server in the VxLAN
  • the VxLAN controller is configured to maintain a mapping relationship between an Internet Protocol IP address of the source VTEP and an IP address of the source VM, and a mapping relationship between an IP address of the destination VTEP and an IP address of the destination VM.
  • the VxLAN controller, the source VTEP, and the destination VTEP communicate with each other; wherein the virtual scalable local area network VxLAN controller includes:
  • a receiving unit configured to receive a query request sent by the source VTEP to obtain an IP address of the destination VTEP, where the query request carries an IP address of the destination VM, where the IP address of the destination VM is The source VTEP is obtained from the ARP packet sent by the source VM;
  • a determining unit configured to determine an IP address of the destination VTEP according to a mapping relationship between an IP address of the destination VM and an IP address of the destination VTEP of the destination VM;
  • a sending unit configured to send, to the source VTEP, an IP address query response that carries the destination VTEP, so that the source VTEP encapsulates the ARP ⁇ message into a VxLAN according to the IP address of the destination VTEP. And send it to the destination VTEP.
  • the method further includes: an acquiring unit, configured to obtain a mapping relationship between an IP address of the destination VM and an IP address of the destination VTEP.
  • the obtaining unit is further configured to: when the destination VM migrates, receive an updated mapping relationship, where the updated mapping relationship is between the target VM and an IP address of a VTEP to which the destination VM currently belongs. Mapping relationship, the VTEP to which the destination VM currently belongs is the destination VTEP.
  • an embodiment of the present invention provides a virtual scalable local area network VxLAN tunnel endpoint VTEP, which is applied to a VxLAN, where the VxLAN includes a source VxLAN tunnel endpoint VTEP, a target VTEP, and a VxLAN controller, where the source VTEP is used for management.
  • the VxLAN controller for maintaining the source VTEP Mapping relationship between the Internet Protocol IP address and the IP address of the source VM and the IP address of the destination VTEP and the destination a mapping relationship between the IP addresses of the VMs, and the VxLAN controller, the source VTEP, and the destination VTEP communicate with each other;
  • the source VxLAN tunnel endpoint VTEP includes:
  • a receiving unit configured to receive an ARP packet of the source VM VM, where the ARP packet is used to request a media access control MAC address of the destination VM, where the ARP file carries an IP address of the destination VM;
  • a first obtaining unit configured to acquire an IP address of the destination VM that is carried by the ARP
  • a first sending unit configured to send a query request to the VxLAN controller to obtain an IP address of the destination VTEP;
  • the query request carries an IP address of the destination VM
  • a second acquiring unit configured to acquire an IP address of the destination VTEP from the VxLAN controller; a message;
  • a second sending unit configured to send the VxLAN ⁇ message to the destination VTEP.
  • the embodiment of the present invention provides a method for sending an ARP packet in a VxLAN, a VTEP, and a VxLAN controller, so that the source VTEP can obtain the IP address and IP address of the destination VM according to the ARP packet of the VM.
  • the VTEP IP address forwards the ARP packet of the VM to the VTEP corresponding to the IP address.
  • the source VTEP in the technical solution of the present invention can directly determine the destination VTEP address, because the destination VTEP address cannot be known in advance, and the destination VTEP address corresponding to the destination VM cannot be obtained in the multicast mode.
  • the request message is sent to the destination VTEP in a unicast manner, which reduces the bandwidth occupied by the sent message and saves the traffic used to send the request message, thereby reducing resource waste.
  • FIG. 1 is a network architecture diagram of a VxLAN in an embodiment of the present invention
  • FIG. 2 is a flow chart of a method for sending an ARP packet in a VxLAN according to an embodiment of the present invention
  • FIG. 3 is a flow chart of another method for sending an ARP packet in a VxLAN according to an embodiment of the present invention
  • FIG. 4 is a flowchart of a method for acquiring a correspondence between a VM and a VTEP according to an embodiment of the present disclosure
  • FIG. 5 is an interaction flowchart of a method for sending an ARP packet in a VxLAN according to an embodiment of the present disclosure
  • FIG. 6 is a schematic structural diagram of a VTEP device according to an embodiment of the present invention.
  • FIG. 7 is a schematic structural diagram of a VxLAN controller according to an embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of another VxLAN controller according to an embodiment of the present disclosure.
  • FIG. 9 is a schematic structural diagram of another VTEP device according to an embodiment of the present invention.
  • FIG. 10 is a schematic structural diagram of another VxLAN controller according to an embodiment of the present invention. detailed description
  • An embodiment of the present invention provides a method for sending an address resolution protocol (ARP) in a virtual scalable local area network (VxLAN), which can be applied to a VxLAN as shown in FIG. 1.
  • the VxLAN includes a source VxLAN tunnel endpoint VTEP, a target VTEP. And VxLAN controllers;
  • the source VTEP is used to manage communication of the source virtual machine VM running on the source server in the VxLAN.
  • the destination VTEP is used to manage the communication of the destination VM running on the destination server in the VxLAN. Letter.
  • the VxLAN controller is configured to maintain a mapping relationship between an Internet Protocol IP address of the source VTEP and an IP address of the source VM, and a mapping relationship between an IP address of the destination VTEP and an IP address of the destination VM, where the VxLAN The controller, the source VTEP, and the destination VTEP communicate with each other.
  • An implementation manner includes a virtualization management system and a cloud operation management system in addition to the VxLAN.
  • the virtualization management system creates a VM according to the issuance request of the cloud operations management system. And manage the VM and VTEP information, and when the VM information changes, synchronize to the cloud operation management system in time.
  • the cloud operations management system is responsible for processing user VM service request requests.
  • responsible for synchronizing the VM and VTEP information to the VxLAN controller such as synchronizing the mapping between the VM's IP address and the VTEP's IP address to VxLAN.
  • the method for sending an address resolution protocol ARP packet in a virtual scalable local area network VxLAN needs to be implemented by the source VTEP as shown in FIG.
  • the method is shown in FIG. 2, and the method includes:
  • the query request carries an IP address of the destination VM.
  • the IP address of the destination VTEP can be obtained according to the mapping relationship between the IP address of the target VTEP maintained in the VxLAN controller and the IP address of the destination VM.
  • 105 Encapsulate the ARP file according to the destination VTEP IP address to generate a VxLAN.
  • the way of packaging is in line with the conventional packaging method of VxLAN.
  • the source VTEP may obtain the IP address of the destination VM according to the ARP packet of the VM, and then determine the VTEP of the destination VM according to the correspondence between the IP address of the VM and the IP address of the VTEP. IP address, and finally according to the IP address of the determined VTEP, to the IP address The VTEP corresponding to the address forwards the ARP packet of the VM.
  • the source VTEP in the technical solution of the present invention can directly determine the destination VTEP address, because the source VTEP cannot know the destination VTEP address corresponding to the destination VM in advance, and the multicast request mode is used. Then, according to the destination VTEP address, the request message is sent to the destination VTEP in a unicast manner, which reduces the bandwidth occupied by the transmission of the message and saves the traffic used for sending the request message, thereby reducing resource waste.
  • VxLAN virtual scalable local area network
  • the query request carries the IP address of the destination VM.
  • the IP address of the destination VM is obtained by the source VTEP from the ARP ⁇ message sent by the source VM.
  • the mapping relationship between the IP addresses determines the IP address of the destination VTEP.
  • VTEP Send an IP address query response carrying the destination VTEP to the source VTEP, so that the source VTEP encapsulates the ARP ⁇ text into a VxLAN ⁇ according to the IP address of the destination VTEP and sends the message to the office. Describe the purpose of VTEP.
  • steps 201 to 203 correspond to steps 103 and 104.
  • the VxLAN controller may determine, according to the query request of the source VTEP, the IP address of the VTEP where the destination VM is located for the source VTEP, and feed back the IP address of the destination VTEP to the source VTEP, so that The source VTEP encapsulates the ARP packet into a VxLAN packet and sends the packet to the destination VTEP according to the IP address of the destination VTEP.
  • the source VTEP in the technical solution of the present invention can directly determine the destination VTEP address, because the destination VTEP address cannot be known in advance because the source VTEP cannot know the destination VTEP address corresponding to the destination VM. Then, according to the destination VTEP address, the request message is sent to the destination VTEP in a unicast manner, which reduces the bandwidth occupied by the sent message and saves the traffic used to send the request message, thereby reducing resource waste.
  • an IP address of the destination VM is provided.
  • the method for obtaining the mapping relationship between the IP address of the destination VTEP and the step 201, as shown in FIG. 4, includes:
  • the VxLAN controller acquires, by using a cloud operation management system, a mapping relationship between the IP addresses of the destination VTEPs of the destination VMs.
  • the mapping relationship between the IP address of the destination VM and the IP address of the destination VTEP is established by the virtualization management system when the destination VTEP is created to manage the destination VM, and the virtualization management system is established by the virtualization management system. Send to the cloud operation management system.
  • a method for updating a mapping relationship between an IP address of a destination VM and an IP address of a destination VTEP including:
  • the VxLAN controller receives an updated mapping relationship sent by the cloud operation management system, where the updated mapping relationship is a mapping relationship between the destination VM and an IP address of a VTEP to which the destination VM belongs.
  • the VTEP to which the destination VM currently belongs is the destination VTEP.
  • the embodiment of the present invention further provides an interaction process between the source VTEP and the VxLAN controller, as shown in FIG. 5, including:
  • the source VTEP receives an ARP packet of the source VM VM, where the ARP packet is used to request a media access control MAC address of the destination VM, and the ARP packet carries an IP address of the destination VM.
  • the source VTEP obtains an IP address of the destination VM carried in the ARP packet.
  • the source VTEP sends a query request to the VxLAN controller, where the query request carries an IP address of the destination VM.
  • the VxLAN controller determines the IP address of the destination VTEP according to the mapping between the IP address of the destination VM and the IP address of the destination VM.
  • the VxLAN controller sends an IP address query port carrying the destination VTEP to the source VTEP.
  • the source VTEP obtains the IP address of the destination VTEP according to the query response.
  • the source VTEP encapsulates the ARP according to the IP address of the destination VTEP to generate a VxLAN. Message.
  • the source VTEP sends the VxLAN ⁇ message to the destination VTEP.
  • the embodiment of the present invention further provides a VTEP, as shown in FIG. 6, including:
  • the receiving unit 41 is configured to receive an ARP packet of the source VM VM, where the ARP packet is used to request a media access control MAC address of the destination VM, and the ARP packet carries an IP address of the destination VM.
  • the first obtaining unit 42 is configured to obtain an IP address of the destination VM carried by the ARP.
  • the first sending unit 43 is configured to send a query request to the VxLAN controller to obtain an IP address of the target VTEP; and the query request carries an IP address of the destination VM.
  • the second obtaining unit 44 is configured to acquire an IP address of the destination VTEP from the VxLAN controller.
  • the generating unit 45 is configured to encapsulate the ARP file to generate a VxLAN message according to the IP address of the destination VTEP.
  • the second sending unit 46 is configured to send the VxLAN ⁇ message to the destination VTEP.
  • the VTEP and the VxLAN controller provided by the embodiment of the present invention may determine, according to the query request of the source VTEP, the IP address of the VTEP where the destination VM is located for the source VTEP, and feed back the IP address of the destination VTEP to the source VTEP, so that The source VTEP encapsulates the ARP packet into a VxLAN packet and sends the packet to the destination VTEP according to the IP address of the destination VTEP.
  • the source VTEP in the technical solution of the present invention can directly determine the destination VTEP address, because the destination VTEP address cannot be known in advance because the source VTEP cannot know the destination VTEP address corresponding to the destination VM. Then, according to the destination VTEP address, the request message is sent to the destination VTEP in a unicast manner, which reduces the bandwidth occupied by the sent message and saves the traffic used to send the request message, thereby reducing resource waste.
  • the embodiment of the invention further provides a VxLAN controller, as shown in FIG. 7, comprising:
  • the receiving unit 51 is configured to receive a query request sent by the source VTEP to obtain an IP address of the destination VTEP.
  • the query request carries the IP address of the destination VM.
  • the IP address of the destination VM is obtained by the source VTEP from the ARP ⁇ message sent by the source VM.
  • the determining unit 52 is configured to determine an IP address of the destination VTEP according to a mapping relationship between an IP address of the destination VM and an IP address of the destination VM and an IP address of the destination VTEP.
  • the sending unit 53 is configured to send, to the source VTEP, an IP address query response that carries the destination VTEP, so that the source VTEP encapsulates the ARP ⁇ text into a VxLAN according to the IP address of the destination VTEP. And sent to the destination VTEP.
  • the VxLAN controller further includes:
  • the obtaining unit 54 is configured to obtain a mapping relationship between an IP address of the destination VM and an IP address of the destination VTEP.
  • the obtaining unit 54 is further configured to: when the destination VM migrates, receive the updated mapping relationship, where the updated mapping relationship is that the destination VM and the VTEP to which the destination VM currently belongs A mapping relationship between IP addresses, where the VTEP to which the destination VM currently belongs is the destination VTEP.
  • the VxLAN controller can determine the IP address of the VTEP where the destination VM is located for the source VTEP in response to the query request of the source VTEP, and feed back the IP address of the destination VTEP to the source VTEP.
  • the source VTEP encapsulates the ARP packet into a VxLAN packet and sends the packet to the destination VTEP according to the IP address of the destination VTEP.
  • the source VTEP in the technical solution of the present invention can directly determine the destination VTEP address, because the destination VTEP address cannot be known in advance, and the destination VTEP address corresponding to the destination VM cannot be obtained in the multicast mode. Then, according to the destination VTEP address, the request message is sent to the destination VTEP in a unicast manner, which reduces the bandwidth occupied by the sent message and saves the traffic used for sending the request message, thereby reducing resource waste.
  • the embodiment of the present invention further provides a VTEP device.
  • the device includes a processor 61, a memory 62, and an input/output interface 63.
  • the memory 62 is configured with a program code
  • the processor is configured to invoke the
  • the program code of the memory 62 is configured to implement the VTEP as shown in FIGS. 1 and 5.
  • the method flow of the side, the input/output interface 63 is for transmitting and receiving information, wherein each of the above devices can communicate through a bus.
  • the input/output interface 63 is configured to receive an ARP packet of the source virtual machine VM, where the ARP packet is used to request a media access control MAC address of the destination VM, and the ARP packet carries the destination VM And an IP address for sending a query request to the VxLAN controller to obtain the destination VTEP; the query request carries an IP address of the destination VM; and, for, from the VxLAN controller Obtaining an IP address of the destination VTEP; and, configured to send the VxLAN to the destination VTEP
  • the processor 61 is further configured to: obtain an IP address of the destination VM that is carried by the ARP, and a method for encapsulating the ARP file to generate a VxLAN according to an IP address of the destination VTEP.
  • the VTEP and the VxLAN controller provided by the embodiment of the present invention may determine, according to the query request of the source VTEP, the IP address of the VTEP where the destination VM is located for the source VTEP, and feed back the IP address of the destination VTEP to the source VTEP, so that The source VTEP encapsulates the ARP packet into a VxLAN packet and sends the packet to the destination VTEP according to the IP address of the destination VTEP.
  • the source VTEP in the technical solution of the present invention can directly determine the destination VTEP address, because the destination VTEP address cannot be known in advance because the source VTEP cannot know the destination VTEP address corresponding to the destination VM. Then, according to the destination VTEP address, the request message is sent to the destination VTEP in a unicast manner, which reduces the bandwidth occupied by the sent message and saves the traffic used to send the request message, thereby reducing resource waste.
  • the embodiment of the present invention further provides a VxLAN controller.
  • the electronic terminal includes a processor 71, a memory 72, and an input/output interface 73.
  • the memory 72 is configured with a program code, and the processor is used to invoke
  • the program code of the memory 72 is configured to implement a method flow on the VTEP side as shown in FIGS. 3, 4 and 5, and the input/output interface 73 is configured to send and receive information, wherein each device can pass between The bus communicates.
  • the input/output interface 73 is configured to receive a query request sent by the source VTEP to obtain an IP address of the destination VTEP, where the query request carries an IP address of the destination VM, where the destination VM is The IP address is obtained by the source VTEP from the ARP packet sent by the source VM; And sending an IP address query response carrying the destination VTEP to the source VTEP, so that the source VTEP encapsulates the ARP ⁇ message into a VxLAN ⁇ according to the IP address of the destination VTEP and sends the The target VTEP.
  • the processor 71 is configured to determine an IP address of the destination VTEP according to a mapping relationship between an IP address of the destination VM and an IP address of the destination VTEP of the destination VM.
  • the input/output interface 73 is further configured to obtain a mapping relationship between the IP addresses of the destination VTEPs of the destination VMs.
  • the input/output interface 73 is further configured to: when the destination VM migrates, receive the updated mapping relationship, where the updated mapping relationship is the VTEP to which the destination VM and the destination VM currently belong.
  • the mapping relationship between the IP addresses, the VTEP to which the destination VM currently belongs is the destination VTEP.
  • the VxLAN controller can determine the IP address of the VTEP where the destination VM is located for the source VTEP in response to the query request of the source VTEP, and feed back the IP address of the destination VTEP to the source VTEP.
  • the source VTEP encapsulates the ARP packet into a VxLAN packet and sends the packet to the destination VTEP according to the IP address of the destination VTEP.
  • the source VTEP in the technical solution of the present invention can directly determine the destination VTEP address, because the destination VTEP address cannot be known in advance, and the destination VTEP address corresponding to the destination VM cannot be obtained in the multicast mode. Then, according to the destination VTEP address, the request message is sent to the destination VTEP in a unicast manner, which reduces the bandwidth occupied by the sent message and saves the traffic used for sending the request message, thereby reducing resource waste.
  • the present invention can be implemented by means of software plus necessary general hardware, and of course, can also be through hardware, but in many cases the former is a better implementation. .
  • the technical solution of the present invention which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a readable storage medium, such as a floppy disk of a computer. , hard disk or CD, etc., including a number of instructions to make a computer device (can be a personal computer, server, or network device) Etc.) Performing the methods described in various embodiments of the invention.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种在VxLAN中发送ARP报文发送方法、VTEP及VxLAN控制器,能够消除因组播方式发送报文而产生的资源浪费的问题。本发明提供的技术方案主要包括源VTEP接收所述源虚拟机VM的ARP报文,所述ARP报文用于请求所述目的VM的介质访问控制MAC地址,所述ARP报文携带所述目的VM的IP地址;获取所述ARP报文携带的所述目的VM的IP地址;向所述VxLAN控制器发送查询请求以获取所述目的VTEP的IP地址;所述查询请求携带所述目的VM的IP地址;从所述VxLAN控制器获取所述目的VTEP的IP地址;根据所述目的VTEP的IP地址封装所述ARP报文生成VxLAN报文;向所述目的VTEP发送所述VxLAN报文。

Description

一种在 VxLAN中发送 ARP报文发送方法、 VTEP及 VxLAN控制器 技术领域
本发明涉及计算机网络通信领域,尤其涉及一种在 VxLAN中发送 ARP ^艮文 发送方法、 VTEP及 VxLAN控制器。 背景技术
现有技术应用虚拟可扩展局域网 (Vi r tua l extens ible LAN, VxLAN )技 术扩展网络虚拟化, 用以得到足够数量的虚拟网络, 来满足用户使用。
基于 VxLAN虚拟化网络的虚拟机之间建立通信过程具体如下:
源虚拟机 ( Vi r tua l Machine, VM ) ) 发送地址解析协议 (Addres s Resolut ion Protocol , ARP)才艮文, 用以请求目的 VM的媒体访问控制 ( Media Acces s Control , MAC )地址; 与源 VM对应的源 VxLAN隧道终端( VxLAN Tunne l Endpoint , VTEP )基于该 ARP才艮文, 构造因特网组管理协议( Interne t Group Management Protocol , IGMP ) 4艮文, 然后将该 IGMP报文发送至与目的 VM对 应的目的 VTEP,若该目的 VTEP接收到该 IGMP ^艮文,则该目的 VTE2会对该 IGMP 报文进行解析, 并将解析结果广播至与目的 VTEP对应的目的 VM中, 以便目的 VM接收到该解析结果后, 将自身的 MAC地址通过目的 VTEP2进行封装, 然后 反馈给源 VM。源 VTEP用于将源 VM发送的报文封装成 VxLAN报文,或者将 VxLAN 报文解封装发送给源 VM; 目的 VTEP用于将目的 VM发送的报文封装成 VxLAN 报文, 或者将 VxLAN报文解封装发送给目的 VM。
在实现上述对信息传输的过程中,现有技术中至少存在如下问题:源 VTEP 要想得到目的 VM的 MAC地址, 源 VTEP1就必须要在多个组播组中发送 IGMP 才艮文, 以获得与目的 VTEP对应的目的 VM2的 MAC地址, 这样就导致源 VTEP 发送报文会占用大量信息传输带宽,使用了大量的数据流量,从而造成了资源 的浪费。 发明内容
本发明实施例提供一种在 VxLAN中发送 ARP报文发送方法、 VTEP及 VxLAN 控制器, 能够解决在基于 VxLAN虚拟化网络的虚拟机之间建立通信过程中, 占 用了大量信息传输带宽, 使用了许多流量, 从而造成了资源的浪费的问题。
为达到上述目的, 本发明的实施例釆用如下技术方案:
第一方面,本发明实施例提供了一种在虚拟可扩展局域网 VxLAN中发送地 址解析协议 ARP 文的方法, 所述虚拟可扩展局域网包括源 VxLAN隧道端点 VTEP, 目标 VTEP和 VxLAN控制器, 所述源 VTEP用于管理源服务器上运行的源 虚拟机 VM在所述 VxLAN中的通信,所述目的 VTEP用于管理目的服务器上运行 的目的 VM在所述 VxLAN中的通信, 所述 VxLAN控制器用于维护所述源 VTEP 的互联网协议 IP地址与所述源 VM的 IP地址的映射关系及所述目的 VTEP的 IP地址与所述目的 VM的 IP地址的映射关系 ,所述 VxLAN控制器、所述源 VTEP 和所述目的 VTEP之间互相通信, 所述方法包括:
所述 VxLAN控制器接收所述源 VTEP发送的查询请求以获取所述目的 VTEP 的 IP地址; 其中, 所述查询请求携带所述目的 VM的 IP地址; 其中, 所述目 的 VM的 IP地址是所述源 VTEP从所述源 VM发送的 ARP报文中获取的;
所述 VxLAN控制器才艮据所述目的 VM的 IP地址及所述目的 VM的 IP地址所 述目的 VTEP的 IP地址之间的映射关系, 确定所述目的 VTEP的 IP地址; 所述 VxLAN控制器向所述源 VTEP发送携带所述目的 VTEP的 IP地址查询 响应, 以使所述源 VTEP根据所述目的 VTEP的 IP地址将所述 ARP ^艮文封装成 VxLAN ^艮文并发送至所述目的 VTEP。
结合第一方面, 在第一方面的第一种可能的实现方式中, 在所述 VxLAN 控制器接收所述源 VTEP发送的查询请求之前, 还包括:
所述 VxLAN控制器获取所述目的 VM的 IP地址与所述目的 VTEP的 IP地址 之间的映射关系。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现 方式中, 还包括:
当所述目的 VM迁移时, 所述 VxLAN控制器接收更新后的映射关系, 所述 更新后的映射关系为所述目的 VM与所述目的 VM当前所属的 VTEP的 IP地址之 间的映射关系, 所述目的 VM当前所属的 VTEP为所述目的 VTEP。
第二方面,本发明实施例提供了一种在虚拟可扩展局域网 VxLAN中发送地 址解析协议 ARP 文发送方法,所述虚拟可扩展局域网包括源 VxLAN隧道端点 VTEP , 目标 VTEP和 VxLAN控制器, 所述源 VTEP用于管理源服务器上运行的源 虚拟机 VM在所述 VxLAN中的通信,所述目的 VTEP用于管理目的服务器上运行 的目的 VM在所述 VxLAN中的通信, 所述 VxLAN控制器用于维护所述源 VTEP 的互联网协议 IP地址与所述源 VM的 IP地址的映射关系及所述目的 VTEP的 IP地址与所述目的 VM的 IP地址的映射关系 ,所述 VxLAN控制器、所述源 VTEP 和所述目的 VTEP之间互相通信, 所述方法包括:
所述源 VTEP接收所述源虚拟机 VM的 ARP ^艮文,所述 ARP ^艮文用于请求所 述目的 VM的介质访问控制 MAC地址, 所述 ARP ^艮文携带所述目的 VM的 IP地 址;
所述源 VTEP获取所述 ARP报文携带的所述目的 VM的 IP地址;
所述源 VTEP向所述 VxLAN控制器发送查询请求以获取所述目的 VTEP的
IP地址; 所述查询请求携带所述目的 VM的 IP地址;
所述源 VTEP从所述 VxLAN控制器获取所述目的 VTEP的 IP地址; 所述源 VTEP根据所述目的 VTEP的 IP地址封装所述 ARP 文生成 VxLAN 报文;
所述源 VTEP向所述目的 VTEP发送所述 VxLAN ^艮文。
第三方面, 本发明实施例一种虚拟可扩展局域网 VxLAN控制器, 应用于 VxLAN中, 所述 VxLAN包括源 VxLAN隧道端点 VTEP、 目标 VTEP和 VxLAN控制 器,所述源 VTEP用于管理源服务器上运行的源虚拟机 VM在所述 VxLAN中的通 信,所述目的 VTEP用于管理目的服务器上运行的目的 VM在所述 VxLAN中的通 信, 所述 VxLAN控制器用于维护所述源 VTEP的互联网协议 IP地址与所述源 VM的 IP地址的映射关系及所述目的 VTEP的 IP地址与所述目的 VM的 IP地址 的映射关系,所述 VxLAN控制器、所述源 VTEP和所述目的 VTEP之间互相通信; 其中, 所述虚拟可扩展局域网 VxLAN控制器包括:
接收单元, 用于接收所述源 VTEP 发送的查询请求以获取所述目的 VTEP 的 IP地址; 其中, 所述查询请求携带所述目的 VM的 IP地址; 其中, 所述目 的 VM的 IP地址是所述源 VTEP从所述源 VM发送的 ARP报文中获取的;
确定单元,用于根据所述目的 VM的 IP地址及所述目的 VM的 IP地址所述 目的 VTEP的 IP地址之间的映射关系, 确定所述目的 VTEP的 IP地址;
发送单元, 用于向所述源 VTEP发送携带所述目的 VTEP的 IP地址查询响 应, 以使所述源 VTEP才艮据所述目的 VTEP的 IP地址将所述 ARP ^艮文封装成 VxLAN ^艮文并发送至所述目的 VTEP。
结合第三方面, 在第三方面的第一种可能的实现方式中, 还包括: 获取单元,用于获取所述目的 VM的 IP地址与所述目的 VTEP的 IP地址之 间的映射关系。
结合第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现 方式中,
所述获取单元, 还用于当所述目的 VM迁移时, 接收更新后的映射关系, 所述更新后的映射关系为所述目的 VM与所述目的 VM当前所属的 VTEP的 IP 地址之间的映射关系, 所述目的 VM当前所属的 VTEP为所述目的 VTEP。
第四方面, 本发明实施例提供了一种虚拟可扩展局域网 VxLAN 隧道端点 VTEP, 应用于 VxLAN中, 所述 VxLAN包括源 VxLAN隧道端点 VTEP、 目标 VTEP 和 VxLAN控制器,所述源 VTEP用于管理源服务器上运行的源虚拟机 VM在所述 VxLAN中的通信, 所述目的 VTEP用于管理目的服务器上运行的目的 VM在所述 VxLAN中的通信, 所述 VxLAN控制器用于维护所述源 VTEP的互联网协议 IP地 址与所述源 VM的 IP地址的映射关系及所述目的 VTEP的 IP地址与所述目的 VM的 IP地址的映射关系, 所述 VxLAN控制器、 所述源 VTEP和所述目的 VTEP 之间互相通信;
其中, 所述源 VxLAN隧道端点 VTEP包括:
接收单元, 用于接收所述源虚拟机 VM的 ARP报文, 所述 ARP报文用于请 求所述目的 VM的介质访问控制 MAC地址, 所述 ARP 文携带所述目的 VM的 IP地址;
第一获取单元, 用于获取所述 ARP ^艮文携带的所述目的 VM的 IP地址; 第一发送单元, 用于向所述 VxLAN控制器发送查询请求以获取所述目的 VTEP的 IP地址; 所述查询请求携带所述目的 VM的 IP地址;
第二获取单元, 用于从所述 VxLAN控制器获取所述目的 VTEP的 IP地址; 报文;
第二发送单元, 用于向所述目的 VTEP发送所述 VxLAN ^艮文。
本发明实施例提供的一种在 VxLAN 中发送 ARP 报文发送方法、 VTEP 及 VxLAN控制器,使得源 VTEP可以根据 VM的 ARP报文来获取目的 VM的 IP地址, 的 IP地址, 最后根据确定好的 VTEP的 IP地址, 向与该 IP地址对应的 VTEP 转发 VM的 ARP报文。 相比于现有技术中因源 VTEP无法预先获知目的 VM对应 的目的 VTEP地址, 而导致使用组播的方式请求报文方式来说, 本发明技术方 案中的源 VTEP是可以直接确定目的 VTEP地址, 然后才艮据该目的 VTEP地址, 以单播的方式向目的 VTEP发送请求消息, 减少了发送报文占用的带宽、 节省 了发送请求消息所使用的流量, 从而减少了资源的浪费。 附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所 需要使用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本发明 的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
图 1为本发明实施例中 VxLAN网络架构图;
图 2为本发明实施例提供的一种在 VxLAN中发送 ARP报文发送方法的流程 图;
图 3为本发明实施例提供的另一种在 VxLAN中发送 ARP报文发送方法的流 程图;
图 4为本发明实施例提供的一种 VM与 VTEP对应关系的获取方法的流程 图;
图 5为本发明实施例提供的一种在 VxLAN中发送 ARP报文发送方法的交互 流程图;
图 6为本发明实施例提供的一种 VTEP装置的结构示意图;
图 7为本发明实施例提供的一种 VxLAN控制器的结构示意图;
图 8为本发明实施例提供的另一种 VxLAN控制器的结构示意图;
图 9为本发明实施例提供的另一种 VTEP装置的结构示意图;
图 1 0为本发明实施例提供的另一种 VxLAN控制器的结构示意图。 具体实施方式
下面将结合本实施例中的附图, 对本实施例中的技术方案进行清楚地描 述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。 基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所 获得的所有其他实施例, 都属于本发明保护的范围。
本发明实施例提供的一种在虚拟可扩展局域网 VxLAN 中发送地址解析协 议 ARP ^艮文发送方法, 可应用于如图 1所示的 VxLAN中, 所述 VxLAN包括源 VxLAN隧道端点 VTEP、 目标 VTEP和 VxLAN控制器;
所述源 VTEP用于管理源服务器上运行的源虚拟机 VM在所述 VxLAN中的通 信。
所述目的 VTEP用于管理目的服务器上运行的目的 VM在所述 VxLAN中的通 信。
所述 VxLAN控制器用于维护所述源 VTEP的互联网协议 IP地址与所述源 VM的 IP地址的映射关系及所述目的 VTEP的 IP地址与所述目的 VM的 IP地址 的映射关系,所述 VxLAN控制器、所述源 VTEP和所述目的 VTEP之间互相通信。
一种实现方式,在 VxLAN外还包括虚拟化管理系统和云运营管理系统。 该 虚拟化管理系统才艮据云运营管理系统的发放请求创建 VM。并且管理 VM和 VTEP 的信息, 当 VM信息发生变化时, 及时同步到云运营管理系统。 该云运营管理 系统负责处理用户 VM业务申请请求。 负责将 VM和 VTEP的信息同步给 VxLAN 控制器, 如将 VM的 IP地址和 VTEP的 IP地址之间的映射关系同步给 VxLAN。
基于上述网络架构, 本发明实施例提供的一种在虚拟可扩展局域网 VxLAN 中发送地址解析协议 ARP报文发送方法, 需要由如图 1所示的源 VTEP实现。 该方法如图 2所示, 所述方法包括:
101、接收所述源虚拟机 VM的 ARP报文, 所述 ARP报文用于请求所述目的 VM的介质访问控制 MAC地址, 所述 ARP ^艮文携带所述目的 VM的 IP地址。
102、 获取所述 ARP报文携带的所述目的 VM的 I P地址。
103、向所述 VxLAN控制器发送查询请求以获取所述目的 VTEP的 IP地址; 所述查询请求携带所述目的 VM的 IP地址。
104、 从所述 VxLAN控制器获取所述目的 VTEP的 IP地址。
其中,所述目的 VTEP的 IP地址可根据所述 VxLAN控制器内维护的所述目 的 VTEP的 IP地址与所述目的 VM的 IP地址的映射关系得到。
105、 根据所述目的 VTEP的 IP地址封装所述 ARP 文生成 VxLAN ^艮文。 其中, 封装的方式符合 VxLAN的常规封装方法。
106、 向所述目的 VTEP发送所述 VxLAN ^艮文。
本发明实施例提供的方法, 源 VTEP可以根据 VM的 ARP报文来获取目的 VM的 IP地址, 然后才艮据 VM的 IP地址与 VTEP的 IP地址的对应关系来确定目 的 VM所处的 VTEP的 IP地址, 最后根据确定好的 VTEP的 IP地址, 向与该 IP 地址对应的 VTEP转发 VM的 ARP报文。 相比于现有技术中因源 VTEP无法预先 获知目的 VM对应的目的 VTEP地址,而导致使用组播的方式请求报文方式来说, 本发明技术方案中的源 VTEP是可以直接确定目的 VTEP地址,然后根据该目的 VTEP地址,以单播的方式向目的 VTEP发送请求消息, 减少了发送 ^艮文占用的 带宽、 节省了发送请求消息所使用的流量, 从而减少了资源的浪费。
本发明实施例提供的另一种在虚拟可扩展局域网 VxLAN 中发送地址解析 协议 ARP报文发送方法, 需要由如图 1所示的 VxLAN控制器实现。该方法如图 3所示, 所述方法包括:
201、 接收所述源 VTEP发送的查询请求以获取所述目的 VTEP的 IP地址。 其中, 所述查询请求携带所述目的 VM的 IP地址; 其中, 所述目的 VM的 IP地址是所述源 VTEP从所述源 VM发送的 ARP ^艮文中获取的。 的 IP地址之间的映射关系, 确定所述目的 VTEP的 IP地址。
203、 向所述源 VTEP发送携带所述目的 VTEP的 IP地址查询响应, 以使所 述源 VTEP根据所述目的 VTEP的 IP地址将所述 ARP ^艮文封装成 VxLAN ^艮文并 发送至所述目的 VTEP。
以上步骤 201至 203与步骤 103和 104相呼应。
本发明实施例提供的方法, VxLAN控制器可以响应于源 VTEP的查询请求, 为源 VTEP确定目的 VM所处的 VTEP的 IP地址,并将该目的 VTEP的 IP地址反 馈给所述源 VTEP , 使得所述源 VTEP才艮据所述目的 VTEP的 IP地址将所述 ARP 报文封装成 VxLAN报文并发送至所述目的 VTEP。 相比于现有技术中因源 VTEP 无法预先获知目的 VM对应的目的 VTEP地址,而导致使用组播的方式请求报文 方式来说, 本发明技术方案中的源 VTEP是可以直接确定目的 VTEP地址, 然后 根据该目的 VTEP地址,以单播的方式向目的 VTEP发送请求消息, 减少了发送 报文占用的带宽、节省了发送请求消息所使用的流量,从而减少了资源的浪费。
可选的,在本发明实施例的另一种实现方式中,提供了目的 VM的 IP地址 与目的 VTEP的 IP地址之间的映射关系的获取方法,执行与步骤 201之前,如 图 4所示, 包括:
204、 所述 VxLAN控制器从云运营管理系统获取所述目的 VM的 IP地址所 述目的 VTEP的 IP地址之间的映射关系。
其中,所述目的 VM的 IP地址所述目的 VTEP的 IP地址之间的映射关系是 由虚拟化管理系统在创建所述目的 VTEP管理所述目的 VM时建立的,并由所述 虚拟化管理系统发送至所述云运营管理系统。
可选的,在本发明实施例的另一种实现方式中,提供了目的 VM的 IP地址 与目的 VTEP的 IP地址之间的映射关系的更新方法, 包括:
所述 VxLAN控制器接收云运营管理系统发送的更新后的映射关系,所述更 新后的映射关系为所述目的 VM与所述目的 VM当前所属的 VTEP的 IP地址之间 的映射关系, 所述目的 VM当前所属的 VTEP为所述目的 VTEP。
另外, 本发明实施例还在此提供一种源 VTEP和 VxLAN控制器之间的交互 流程, 如图 5所示, 包括:
301、 源 VTEP接收所述源虚拟机 VM的 ARP报文, 所述 ARP报文用于请求 所述目的 VM的介质访问控制 MAC地址, 所述 ARP 文携带所述目的 VM的 IP 地址。
302、 源 VTEP获取所述 ARP报文携带的所述目的 VM的 IP地址。
303、 源 VTEP向所述 VxLAN控制器发送查询请求, 所述查询请求携带所述 目的 VM的 IP地址。
304、 VxLAN控制器根据所述目的 VM的 IP地址及所述目的 VM的 IP地址 所述目的 VTEP的 IP地址之间的映射关系, 确定所述目的 VTEP的 IP地址。
305、 VxLAN控制器向所述源 VTEP发送携带所述目的 VTEP的 IP地址查询 口向应。
306、 源 VTEP从才艮据所述查询响应获取所述目的 VTEP的 IP地址。
307、 源 VTEP根据所述目的 VTEP的 IP地址封装所述 ARP ^艮文生成 VxLAN 报文。
308、 源 VTEP向所述目的 VTEP发送所述 VxLAN ^艮文。
为实现上述方法流程, 本发明实施例还提供了一种 VTEP , 如图 6所示, 包括:
接收单元 41 , 用于接收所述源虚拟机 VM的 ARP报文, 所述 ARP报文用于 请求所述目的 VM的介质访问控制 MAC地址, 所述 ARP 文携带所述目的 VM 的 IP地址。
第一获取单元 42 , 用于获取所述 ARP ^艮文携带的所述目的 VM的 IP地址。 第一发送单元 43 , 用于向所述 VxLAN控制器发送查询请求以获取所述目 的 VTEP的 IP地址; 所述查询请求携带所述目的 VM的 IP地址。
第二获取单元 44 , 用于从所述 VxLAN控制器获取所述目的 VTEP的 IP地 址。
生成单元 45 , 用于才艮据所述目的 VTEP的 IP地址封装所述 ARP 文生成 VxLAN报文。
第二发送单元 46 , 用于向所述目的 VTEP发送所述 VxLAN ^艮文。
本发明实施例提供的 VTEP , VxLAN控制器可以响应于源 VTEP的查询请求, 为源 VTEP确定目的 VM所处的 VTEP的 IP地址,并将该目的 VTEP的 IP地址反 馈给所述源 VTEP , 使得所述源 VTEP才艮据所述目的 VTEP的 IP地址将所述 ARP 报文封装成 VxLAN报文并发送至所述目的 VTEP。 相比于现有技术中因源 VTEP 无法预先获知目的 VM对应的目的 VTEP地址,而导致使用组播的方式请求报文 方式来说, 本发明技术方案中的源 VTEP是可以直接确定目的 VTEP地址, 然后 根据该目的 VTEP地址,以单播的方式向目的 VTEP发送请求消息, 减少了发送 报文占用的带宽、节省了发送请求消息所使用的流量,从而减少了资源的浪费。
本发明实施例还提供了一种 VxLAN控制器, 如图 7所示, 包括:
接收单元 51 ,用于接收所述源 VTEP发送的查询请求以获取所述目的 VTEP 的 IP地址。 其中, 所述查询请求携带所述目的 VM的 IP地址; 其中, 所述目的 VM的 IP地址是所述源 VTEP从所述源 VM发送的 ARP ^艮文中获取的。
确定单元 52 , 用于根据所述目的 VM的 IP地址及所述目的 VM的 IP地址 所述目的 VTEP的 IP地址之间的映射关系, 确定所述目的 VTEP的 IP地址。
发送单元 53 , 用于向所述源 VTEP发送携带所述目的 VTEP的 IP地址查询 响应, 以使所述源 VTEP根据所述目的 VTEP的 IP地址将所述 ARP ^艮文封装成 VxLAN ^艮文并发送至所述目的 VTEP。
可选的是, 如图 8所示, 所述 VxLAN控制器还包括:
获取单元 54 , 用于获取所述目的 VM的 IP地址与所述目的 VTEP的 IP地 址之间的映射关系。
可选的是, 所述获取单元 54还用于当所述目的 VM迁移时,接收更新后的 映射关系, 所述更新后的映射关系为所述目的 VM与所述目的 VM 当前所属的 VTEP的 IP地址之间的映射关系, 所述目的 VM当前所属的 VTEP为所述目的 VTEP。
本发明实施例提供的 VxLAN控制器, VxLAN控制器可以响应于源 VTEP的 查询请求, 为源 VTEP确定目的 VM所处的 VTEP的 IP地址, 并将该目的 VTEP 的 IP地址反馈给所述源 VTEP, 使得所述源 VTEP才艮据所述目的 VTEP的 IP地 址将所述 ARP报文封装成 VxLAN报文并发送至所述目的 VTEP。 相比于现有技 术中因源 VTEP无法预先获知目的 VM对应的目的 VTEP地址, 而导致使用组播 的方式请求报文方式来说, 本发明技术方案中的源 VTEP是可以直接确定目的 VTEP地址, 然后根据该目的 VTEP地址,以单播的方式向目的 VTEP发送请求消 息, 减少了发送报文占用的带宽、 节省了发送请求消息所使用的流量, 从而减 少了资源的浪费。
本发明实施例还提供了一种 VTEP装置, 如图 9所述, 该装置包括处理器 61 , 存储器 62、 输入输出接口 63 , 所述存储器 62被配置程序代码, 所述处理 器用于调用所述存储器 62配置的程序代码,用以实现如图 1及图 5所示的 VTEP 侧的方法流程, 所述输入输出接口 63用于发送和接收信息, 其中, 上述各个 器件之间可通过总线进行通信。
所述输入输出接口 63 , 用于接收所述源虚拟机 VM的 ARP报文, 所述 ARP 报文用于请求所述目的 VM的介质访问控制 MAC地址, 所述 ARP报文携带所述 目的 VM的 IP地址; 以及, 用于向所述 VxLAN控制器发送查询请求以获取所述 目的 VTEP的 IP地址; 所述查询请求携带所述目的 VM的 IP地址; 以及, 用于 从所述 VxLAN控制器获取所述目的 VTEP的 IP地址; 以及, 用于向所述目的 VTEP发送所述 VxLAN ^艮文
所述处理器 61还用于,获取所述 ARP ^艮文携带的所述目的 VM的 IP地址; 以及用于根据所述目的 VTEP的 IP地址封装所述 ARP 文生成 VxLAN ^艮文。
本发明实施例提供的 VTEP , VxLAN控制器可以响应于源 VTEP的查询请求, 为源 VTEP确定目的 VM所处的 VTEP的 IP地址,并将该目的 VTEP的 IP地址反 馈给所述源 VTEP , 使得所述源 VTEP才艮据所述目的 VTEP的 IP地址将所述 ARP 报文封装成 VxLAN报文并发送至所述目的 VTEP。 相比于现有技术中因源 VTEP 无法预先获知目的 VM对应的目的 VTEP地址,而导致使用组播的方式请求报文 方式来说, 本发明技术方案中的源 VTEP是可以直接确定目的 VTEP地址, 然后 根据该目的 VTEP地址,以单播的方式向目的 VTEP发送请求消息, 减少了发送 报文占用的带宽、节省了发送请求消息所使用的流量,从而减少了资源的浪费。
本发明实施例还提供了一种 VxLAN控制器, 如图 10所述, 该电子终端包 括处理器 71 , 存储器 72、 输入输出接口 73 , 所述存储器 72被配置程序代码, 所述处理器用于调用所述存储器 72配置的程序代码, 用以实现如图 3、 4及 5 所示的 VTEP侧的方法流程,所述输入输出接口 73用于发送和接收信息,其中, 上述各个器件之间可通过总线进行通信。
所述输入输出接口 73 , 用于接收所述源 VTEP发送的查询请求以获取所述 目的 VTEP的 IP地址;其中,所述查询请求携带所述目的 VM的 IP地址;其中, 所述目的 VM的 IP地址是所述源 VTEP从所述源 VM发送的 ARP报文中获取的; 以及用于向所述源 VTEP发送携带所述目的 VTEP的 IP地址查询响应, 以使所 述源 VTEP根据所述目的 VTEP的 IP地址将所述 ARP ^艮文封装成 VxLAN ^艮文并 发送至所述目的 VTEP。
所述处理器 71 , 用于根据所述目的 VM的 IP地址及所述目的 VM的 IP地 址所述目的 VTEP的 IP地址之间的映射关系, 确定所述目的 VTEP的 IP地址。
可选的是, 所述输入输出接口 73 , 还用于获取所述目的 VM的 IP地址所 述目的 VTEP的 IP地址之间的映射关系。
可选的是, 所述输入输出接口 73还用于当所述目的 VM迁移时,接收更新 后的映射关系,所述更新后的映射关系为所述目的 VM与所述目的 VM当前所属 的 VTEP的 IP地址之间的映射关系,所述目的 VM当前所属的 VTEP为所述目的 VTEP。
本发明实施例提供的 VxLAN控制器, VxLAN控制器可以响应于源 VTEP的 查询请求, 为源 VTEP确定目的 VM所处的 VTEP的 IP地址, 并将该目的 VTEP 的 IP地址反馈给所述源 VTEP, 使得所述源 VTEP才艮据所述目的 VTEP的 IP地 址将所述 ARP报文封装成 VxLAN报文并发送至所述目的 VTEP。 相比于现有技 术中因源 VTEP无法预先获知目的 VM对应的目的 VTEP地址, 而导致使用组播 的方式请求报文方式来说, 本发明技术方案中的源 VTEP是可以直接确定目的 VTEP地址, 然后根据该目的 VTEP地址,以单播的方式向目的 VTEP发送请求消 息, 减少了发送报文占用的带宽、 节省了发送请求消息所使用的流量, 从而减 少了资源的浪费。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发 明可借助软件加必需的通用硬件的方式来实现, 当然也可以通过硬件,但很多 情况下前者是更佳的实施方式。基于这样的理解, 本发明的技术方案本质上或 者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软 件产品存储在可读取的存储介质中, 如计算机的软盘, 硬盘或光盘等, 包括若 干指令用以使得一台计算机设备(可以是个人计算机, 服务器, 或者网络设备 等)执行本发明各个实施例所述的方法。
以上所述, 仅为本发明的具体实施方式, 但本发明的保护范围并不局限于 此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内, 可轻易想到 变化或替换, 都应涵盖在本发明的保护范围之内。 因此, 本发明的保护范围应 所述以权利要求的保护范围为准。

Claims

1、一种在虚拟可扩展局域网 VxLAN中发送地址解析协议 ARP ^艮文的方法, 其特征在于, 所述虚拟可扩展局域网包括源 VxLAN隧道端点 VTEP、 目标 VTEP 和 VxLAN控制器,所述源 VTEP用于管理源服务器上运行的源虚拟机 VM在所述 VxLAN中的通信, 所述目的 VTEP用于管理目的服务器上运行的目的 VM在所述 VxLAN中的通信, 所述 VxLAN控制器用于维护所述源 VTEP的互联网协议 IP地 址与所述源 VM的 IP地址的映射关系及所述目的 VTEP的 IP地址与所述目的 VM的 IP地址的映射关系, 所述 VxLAN控制器、 所述源 VTEP和所述目的 VTEP 之间互相通信, 所述方法包括:
所述 VxLAN控制器接收所述源 VTEP发送的查询请求以获取所述目的 VTEP 的 IP地址; 其中, 所述查询请求携带所述目的 VM的 IP地址; 其中, 所述目 的 VM的 IP地址是所述源 VTEP从所述源 VM发送的 ARP报文中获取的;
所述 VxLAN控制器才艮据所述目的 VM的 IP地址及所述目的 VM的 IP地址所 述目的 VTEP的 IP地址之间的映射关系, 确定所述目的 VTEP的 IP地址;
所述 VxLAN控制器向所述源 VTEP发送携带所述目的 VTEP的 IP地址查询 响应, 以使所述源 VTEP根据所述目的 VTEP的 IP地址将所述 ARP ^艮文封装成 VxLAN ^艮文并发送至所述目的 VTEP。
2、 根据权利要求 1所述的方法, 其特征在于, 在所述 VxLAN控制器接收 所述源 VTEP发送的查询请求之前, 还包括:
所述 VxLAN控制器获取所述目的 VM的 IP地址与所述目的 VTEP的 IP地址 之间的映射关系。
3、 根据权利要求 2所述的方法, 其特征在于, 还包括:
当所述目的 VM迁移时, 所述 VxLAN控制器接收更新后的映射关系, 所述 更新后的映射关系为所述目的 VM与所述目的 VM当前所属的 VTEP的 IP地址之 间的映射关系, 所述目的 VM当前所属的 VTEP为所述目的 VTEP。
4、 一种在虚拟可扩展局域网 VxLAN中发送地址解析协议 ARP · ^艮文发送方 法, 其特征在于, 所述虚拟可扩展局域网包括源 VxLAN隧道端点 VTEP、 目标 VTEP和 VxLAN控制器, 所述源 VTEP用于管理源服务器上运行的源虚拟机 VM 在所述 VxLAN中的通信, 所述目的 VTEP用于管理目的服务器上运行的目的 VM 在所述 VxLAN中的通信, 所述 VxLAN控制器用于维护所述源 VTEP的互联网协 议 IP地址与所述源 VM的 IP地址的映射关系及所述目的 VTEP的 IP地址与所 述目的 VM的 IP地址的映射关系, 所述 VxLAN控制器、 所述源 VTEP和所述目 的 VTEP之间互相通信, 所述方法包括:
所述源 VTEP接收所述源虚拟机 VM的 ARP ^艮文,所述 ARP ^艮文用于请求所 述目的 VM的介质访问控制 MAC地址, 所述 ARP ^艮文携带所述目的 VM的 IP地 址;
所述源 VTEP获取所述 ARP报文携带的所述目的 VM的 IP地址;
所述源 VTEP向所述 VxLAN控制器发送查询请求以获取所述目的 VTEP的
IP地址; 所述查询请求携带所述目的 VM的 IP地址;
所述源 VTEP从所述 VxLAN控制器获取所述目的 VTEP的 IP地址; 所述源 VTEP根据所述目的 VTEP的 IP地址封装所述 ARP 文生成 VxLAN 报文;
所述源 VTEP向所述目的 VTEP发送所述 VxLAN ^艮文。
5、 一种虚拟可扩展局域网 VxLAN控制器, 其特征在于, 应用于 VxLAN中, 所述 VxLAN包括源 VxLAN隧道端点 VTEP、 目标 VTEP和 VxLAN控制器, 所述源 VTEP用于管理源服务器上运行的源虚拟机 VM在所述 VxLAN中的通信, 所述目 的 VTEP用于管理目的服务器上运行的目的 VM在所述 VxLAN中的通信, 所述 VxLAN控制器用于维护所述源 VTEP的互联网协议 IP地址与所述源 VM的 IP地 所述 VxLAN控制器、 所述源 VTEP和所述目的 VTEP之间互相通信;
其中, 所述虚拟可扩展局域网 VxLAN控制器包括:
接收单元, 用于接收所述源 VTEP 发送的查询请求以获取所述目的 VTEP 的 IP地址; 其中, 所述查询请求携带所述目的 VM的 IP地址; 其中, 所述目 的 VM的 IP地址是所述源 VTEP从所述源 VM发送的 ARP报文中获取的; 确定单元,用于根据所述目的 VM的 IP地址及所述目的 VM的 IP地址所述 目的 VTEP的 IP地址之间的映射关系, 确定所述目的 VTEP的 IP地址;
发送单元, 用于向所述源 VTEP发送携带所述目的 VTEP的 IP地址查询响 应, 以使所述源 VTEP才艮据所述目的 VTEP的 IP地址将所述 ARP ^艮文封装成
VxLAN ^艮文并发送至所述目的 VTEP。
6、 根据权利要求 5所述的 VxLAN控制器, 其特征在于, 还包括: 获取单元,用于获取所述目的 VM的 IP地址与所述目的 VTEP的 IP地址之 间的映射关系。
7、 根据权利要求 6所述的 VxLAN控制器, 其特征在于,
所述获取单元, 还用于当所述目的 VM迁移时, 接收更新后的映射关系, 所述更新后的映射关系为所述目的 VM与所述目的 VM当前所属的 VTEP的 IP 地址之间的映射关系, 所述目的 VM当前所属的 VTEP为所述目的 VTEP。
8、一种虚拟可扩展局域网 VxLAN隧道端点 VTEP ,其特征在于,应用于 VxLAN 中, 所述 VxLAN包括源 VxLAN隧道端点 VTEP、 目标 VTEP和 VxLAN控制器, 所 述源 VTEP用于管理源服务器上运行的源虚拟机 VM在所述 VxLAN中的通信,所 述目的 VTEP用于管理目的服务器上运行的目的 VM在所述 VxLAN中的通信,所 述 VxLAN控制器用于维护所述源 VTEP的互联网协议 IP地址与所述源 VM的 IP 地址的映射关系及所述目的 VTEP的 IP地址与所述目的 VM的 IP地址的映射关 系, 所述 VxLAN控制器、 所述源 VTEP和所述目的 VTEP之间互相通信;
其中, 所述源 VxLAN隧道端点 VTEP包括:
接收单元, 用于接收所述源虚拟机 VM的 ARP报文, 所述 ARP报文用于请 求所述目的 VM的介质访问控制 MAC地址, 所述 ARP 文携带所述目的 VM的 IP地址;
第一获取单元, 用于获取所述 ARP ^艮文携带的所述目的 VM的 IP地址; 第一发送单元, 用于向所述 VxLAN控制器发送查询请求以获取所述目的 VTEP的 IP地址; 所述查询请求携带所述目的 VM的 IP地址;
第二获取单元, 用于从所述 VxLAN控制器获取所述目的 VTEP的 IP地址; 报文;
第二发送单元, 用于向所述目的 VTEP发送所述 VxLAN ^艮文。
PCT/CN2014/085157 2013-12-04 2014-08-26 一种在VxLAN中发送ARP报文发送方法、VTEP及VxLAN控制器 WO2015081734A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310646140.1A CN103647853B (zh) 2013-12-04 2013-12-04 一种在VxLAN中发送ARP报文发送方法、VTEP及VxLAN控制器
CN201310646140.1 2013-12-04

Publications (1)

Publication Number Publication Date
WO2015081734A1 true WO2015081734A1 (zh) 2015-06-11

Family

ID=50253006

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/085157 WO2015081734A1 (zh) 2013-12-04 2014-08-26 一种在VxLAN中发送ARP报文发送方法、VTEP及VxLAN控制器

Country Status (2)

Country Link
CN (1) CN103647853B (zh)
WO (1) WO2015081734A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2777661C1 (ru) * 2019-09-16 2022-08-08 Зте Корпорейшн Способ и устройство для предотвращения обхода трафика

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103647853B (zh) * 2013-12-04 2018-07-03 华为技术有限公司 一种在VxLAN中发送ARP报文发送方法、VTEP及VxLAN控制器
WO2015100656A1 (zh) 2013-12-31 2015-07-09 华为技术有限公司 一种实现虚拟机通信的方法和装置
CN105450526B (zh) * 2014-05-28 2018-09-21 华为技术有限公司 一种报文处理方法和设备
CN104243269B (zh) * 2014-09-24 2019-01-22 新华三技术有限公司 一种虚拟扩展局域网报文的处理方法及装置
CN104270298B (zh) * 2014-09-30 2018-10-09 新华三技术有限公司 一种vxlan网络中的报文转发方法及装置
CN104283980B (zh) * 2014-10-09 2018-02-09 新华三技术有限公司 一种地址解析协议代答方法和装置
CN105634770B (zh) 2014-10-29 2019-05-07 新华三技术有限公司 部署虚拟扩展局域网的方法和装置
CN104683152B (zh) * 2015-03-05 2018-10-26 新华三技术有限公司 Vxlan报文处理方法以及装置
US10498836B2 (en) 2015-04-29 2019-12-03 Hewlett Packard Enterprise Development Lp Network based service discovery via unicast messages
CN106210157B (zh) * 2015-04-30 2019-07-23 中国电信股份有限公司 抑制地址解析协议消息的方法与系统、控制器
CN105099922B (zh) * 2015-06-18 2018-10-09 新华三技术有限公司 一种跨虚拟可扩展局域网的数据报文转发方法和装置
CN106789635B (zh) * 2016-03-25 2020-08-14 新华三技术有限公司 一种报文转发方法及装置
CN106161253B (zh) * 2016-06-23 2020-12-25 新华三技术有限公司 一种报文处理方法及装置
CN106209616B (zh) * 2016-07-06 2020-11-06 新华三技术有限公司 一种泛洪抑制方法及装置
CN107770072B (zh) * 2016-08-18 2021-01-08 阿里巴巴集团控股有限公司 一种发送和接收报文的方法和设备
CN106385354B (zh) * 2016-08-30 2019-08-20 锐捷网络股份有限公司 报文转发方法及装置
CN112486626A (zh) * 2016-08-30 2021-03-12 华为技术有限公司 一种确定虚拟机迁移的方法和装置
CN106230667B (zh) * 2016-09-30 2019-08-20 锐捷网络股份有限公司 Vtep保活检测方法及装置
CN106506315B (zh) * 2016-12-16 2019-03-12 无锡华云数据技术服务有限公司 一种报文转发的透明配置方法
CN108270878A (zh) * 2016-12-31 2018-07-10 中国移动通信集团江西有限公司 在vxlan中发送arp报文的方法、vtep设备
CN106998286B (zh) * 2017-05-05 2020-08-04 杭州迪普科技股份有限公司 一种vxlan报文转发方法及装置
CN107547349B (zh) * 2017-07-31 2021-02-05 新华三技术有限公司 一种虚拟机迁移的方法及装置
CN108418740B (zh) * 2018-02-28 2020-09-08 新华三技术有限公司 报文处理方法及装置
CN108900414B (zh) * 2018-06-08 2021-09-10 新华三技术有限公司 转发表生成方法及装置
CN116170251A (zh) * 2021-11-25 2023-05-26 中兴通讯股份有限公司 数据分发的方法、系统、运行控制装置及终端设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102857416A (zh) * 2012-09-18 2013-01-02 中兴通讯股份有限公司 一种实现虚拟网络的方法和虚拟网络
CN103095546A (zh) * 2013-01-28 2013-05-08 华为技术有限公司 一种处理报文的方法、装置及数据中心网络
CN103200069A (zh) * 2013-03-29 2013-07-10 华为技术有限公司 一种报文处理的方法和设备
CN103200085A (zh) * 2013-04-16 2013-07-10 中航网信(北京)科技有限公司 一种实现vxlan报文线速收发的方法及系统
CN103346900A (zh) * 2013-05-31 2013-10-09 华为技术有限公司 大二层网络中虚拟机热迁移后的路由配置方法和网关
WO2013152716A1 (en) * 2012-04-09 2013-10-17 Huawei Technologies Co., Ltd. L3 gateway for vxlan
CN103647853A (zh) * 2013-12-04 2014-03-19 华为技术有限公司 一种在VxLAN中发送ARP报文发送方法、VTEP及VxLAN控制器

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1232072C (zh) * 2002-05-10 2005-12-14 华为技术有限公司 多个虚拟局域网共用一个网际协议子网网段时的通信方法
US7890633B2 (en) * 2003-02-13 2011-02-15 Oracle America, Inc. System and method of extending virtual address resolution for mapping networks
CN1319336C (zh) * 2003-05-26 2007-05-30 华为技术有限公司 一种建立虚拟专用网络的方法
US20110110377A1 (en) * 2009-11-06 2011-05-12 Microsoft Corporation Employing Overlays for Securing Connections Across Networks
CN101924707A (zh) * 2010-09-27 2010-12-22 杭州华三通信技术有限公司 地址解析协议报文的处理方法和设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013152716A1 (en) * 2012-04-09 2013-10-17 Huawei Technologies Co., Ltd. L3 gateway for vxlan
CN102857416A (zh) * 2012-09-18 2013-01-02 中兴通讯股份有限公司 一种实现虚拟网络的方法和虚拟网络
CN103095546A (zh) * 2013-01-28 2013-05-08 华为技术有限公司 一种处理报文的方法、装置及数据中心网络
CN103200069A (zh) * 2013-03-29 2013-07-10 华为技术有限公司 一种报文处理的方法和设备
CN103200085A (zh) * 2013-04-16 2013-07-10 中航网信(北京)科技有限公司 一种实现vxlan报文线速收发的方法及系统
CN103346900A (zh) * 2013-05-31 2013-10-09 华为技术有限公司 大二层网络中虚拟机热迁移后的路由配置方法和网关
CN103647853A (zh) * 2013-12-04 2014-03-19 华为技术有限公司 一种在VxLAN中发送ARP报文发送方法、VTEP及VxLAN控制器

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2777661C1 (ru) * 2019-09-16 2022-08-08 Зте Корпорейшн Способ и устройство для предотвращения обхода трафика

Also Published As

Publication number Publication date
CN103647853A (zh) 2014-03-19
CN103647853B (zh) 2018-07-03

Similar Documents

Publication Publication Date Title
WO2015081734A1 (zh) 一种在VxLAN中发送ARP报文发送方法、VTEP及VxLAN控制器
EP3070887B1 (en) Communication method, device and system for virtual extensible local area network
US20220123960A1 (en) Data Packet Processing Method, Host, and System
EP2905930B1 (en) Processing method, apparatus and system for multicast
US10698717B2 (en) Accelerator virtualization method and apparatus, and centralized resource manager
US9525648B2 (en) Method for acquiring physical address of virtual machine
EP3594808B1 (en) Virtual machine migration method, switch, and virtual machine system
WO2015149563A1 (zh) 通信方法、系统、资源池管理系统、交换机和控制装置
WO2020135574A1 (zh) 报文处理方法、装置、控制面设备和计算机存储介质
JP2019527988A (ja) パケット伝送
US10560380B2 (en) Method for improving throughput for encapsulated network traffic
WO2015149253A1 (zh) 数据中心的虚拟网络管理方法及数据中心系统
WO2017032251A1 (zh) 虚拟网络管理
JP2015095784A (ja) 情報処理システム、情報処理システムの制御方法及び情報処理装置の制御プログラム
CN109194559B (zh) 组播方法及vtep设备
WO2014209455A1 (en) Method and system for uniform gateway access in a virtualized layer-2 network domain
CN112583618B (zh) 为业务提供网络服务的方法、装置和计算设备
WO2013178099A1 (zh) 一种实现远程桌面的系统、方法、客户端和服务中心
WO2015067036A1 (zh) 远程访问配置方法、远程访问方法、装置和系统
WO2019024669A1 (zh) Netlink资源的容器隔离方法及装置
WO2014101145A1 (zh) 传输网络信息的方法及装置
WO2016175872A1 (en) Network based service discovery via unicast messages
WO2014142258A1 (ja) 通信システム、制御装置、アドレス割当方法及びプログラム
CN112565476A (zh) 虚拟机创建方法、arp代理网关及vtep
WO2023010821A1 (zh) 数据中心中主机发现与添加方法、装置、设备及介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14868606

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14868606

Country of ref document: EP

Kind code of ref document: A1