CN110620715B - Virtual extended local area network communication method, tunnel endpoint and controller - Google Patents

Virtual extended local area network communication method, tunnel endpoint and controller Download PDF

Info

Publication number
CN110620715B
CN110620715B CN201810632394.0A CN201810632394A CN110620715B CN 110620715 B CN110620715 B CN 110620715B CN 201810632394 A CN201810632394 A CN 201810632394A CN 110620715 B CN110620715 B CN 110620715B
Authority
CN
China
Prior art keywords
client
information
vtep
vni
vxlan
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.)
Active
Application number
CN201810632394.0A
Other languages
Chinese (zh)
Other versions
CN110620715A (en
Inventor
何晓明
卢泉
陈文华
杨广铭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN201810632394.0A priority Critical patent/CN110620715B/en
Publication of CN110620715A publication Critical patent/CN110620715A/en
Application granted granted Critical
Publication of CN110620715B publication Critical patent/CN110620715B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/66Layer 2 routing, e.g. in Ethernet based MAN's

Abstract

The disclosure provides a VXLAN communication method, a tunnel endpoint and a controller, and relates to the technical field of data communication. The VXLAN communication method disclosed by the invention comprises the following steps: the VXLAN tunnel endpoint VTEP receives client information from a local client; generating network layer reachable information according to the client information, and reporting to the controller; receiving remote client communication information from the controller; and generating a routing forwarding table according to the communication information of the remote client so as to forward the message. By the method, the VTEP can determine the VXLAN network identification VNI associated with each client and the VTEP to which the client belongs, and the complexity of network equipment and operation and maintenance for realizing communication of the client based on VXLAN is reduced.

Description

Virtual extended local area network communication method, tunnel endpoint and controller
Technical Field
The present disclosure relates to the field of data communication technologies, and in particular, to a virtual extensible local area network communication method, a tunnel endpoint, and a controller.
Background
VXLAN (Virtual Extensible Local Area Network) is widely used to virtualize Overlay Network solutions in a multi-tenant environment in a data center. A virtual logical network different from the physical network topology is constructed through a two-layer tunneling technology such as VXLAN on the basis of the physical network topology, the topology structure of the physical network is transparent to an Overlay terminal, and the terminal cannot sense the existence of the physical network but only can sense the logical network structure. VXLAN technology can construct a two-layer virtual network based on a three-layer network structure, and network devices in different network segments can be integrated in the same logical link layer network through VLAN technology, and the network devices seem to be deployed in the same logical link layer network "truly" for end users.
Disclosure of Invention
One object of the present disclosure is to propose a communication implementation of VXLAN.
According to one aspect of the disclosure, a VXLAN communication method is presented, comprising: receiving client information from a local client by a VTEP (VXLAN Tunnel End Point), wherein the client information comprises address information of the client and VNI (VXLAN Network Identifier) information associated with the client; generating network layer reachable information according to the client information, and reporting to the controller; receiving remote client communication information from the controller, the remote client information including an address of the remote client, a VNI associated with the remote client, and information of a VTEP associated with the remote client; and generating a VRF (Virtual Routing Forwarding) according to the communication information of the remote client so as to forward the message.
Optionally, the network reachability information includes the address of the local client and the VNI associated with the client, as well as address information of the VTEP itself.
Optionally, the VRF is generated for the VTEP by using the VNI information as an index according to the address information of the local client, the information of the VTEP associated with the client, and the address information of the remote client and the information of the VTEP associated with the client.
Optionally, the VXLAN communication method further comprises: the VTEP receives a communication request from a local source client to a destination client; searching the address of the destination client in a routing forwarding table entry of a VNI which is associated with the source client and has the same VNI; under the condition of finding, the proxy target client responds to the source client; and when receiving the Ethernet frame sent from the source client to the destination client, generating a VXLAN message according to the Ethernet frame and forwarding the VXLAN message to a VTEP associated with the destination client.
By the method, the VTEP can perform interaction of VXLAN network client information by the controller, and determine the VNI associated with each client and the VTEP to which the VNI belongs, so that the network equipment and operation and maintenance complexity for realizing communication of the client based on VXLAN are reduced.
According to another aspect of the disclosure, a VXLAN communication method is presented, comprising: the controller receives network layer reachable information from different VTEPs; for each VTEP, matching network reachable information from other VTEPs for which local clients associated with the VTEP have associated the same VNI information; and sending the communication information of the remote client to the VTEP according to the successfully matched network reachable information, wherein the communication information of the remote client comprises the address of the remote client, the VNI associated with the remote client and the information of the VTEP associated with the remote client in the successfully matched network reachable information.
Optionally, the network reachability information includes the address of the local client and the VNI associated with the client, as well as address information of the VTEP itself.
By the method, the local client information provided by each VTEP can be aggregated and distributed, so that the VTEP determines the VNI associated with each remote client and the VTEP to which the remote client belongs, and the complexity of network equipment and operation and maintenance for realizing communication of the client based on VXLAN is reduced.
According to yet another aspect of the present disclosure, a VTEP is presented, comprising: a client information receiving module configured to receive client information from a local client, the client information including address information of the client and VNI information associated with the client; the report information generating module is configured to generate network layer reachable information according to the client information; the information reporting module is configured to report the network layer reachable information to the controller; a remote information receiving module configured to receive remote client communications from the controller, the remote client communications including information of an address of the remote client, a remote client associated VNI, and a remote client associated VTEP; and the VRF generation module is configured to generate VRF according to the communication information of the remote client machine so as to forward the message.
Optionally, the VTEP further comprises: a communication request receiving module configured to receive a communication request from a local source client to a destination client; a destination client information search module configured to search for an address of a destination client in a route forwarding entry having the same VNI as a VNI associated with a source client; the proxy response module is configured to proxy the destination client to respond to the source client under the condition that the destination client information search module finds out the destination client information; and the message generating and sending module is configured to generate a VXLAN message according to the Ethernet frame when the Ethernet frame from the source client is received, and forward the VXLAN message to the VTEP associated with the destination client.
According to yet another aspect of the present disclosure, there is provided a VTEP comprising: a memory; and a processor coupled to the memory, the processor configured to perform any of the VXLAN communication methods performed by the VTEP above based on the instructions stored in the memory.
The VTEP can perform local client information interaction by means of the controller, and determine the VNI associated with each client and the VTEP to which the VNI belongs, so that the complexity of network equipment and operation and maintenance for realizing communication of the clients based on VXLAN is reduced.
According to one aspect of the disclosure, a computer-readable storage medium is provided, having stored thereon computer program instructions, which when executed by a processor, implement the steps of any of the above VXLAN communication methods performed by VTEP.
By executing the instructions on such a computer-readable storage medium, the VTEP can perform interaction of local client information via the controller, determine VNIs associated with each client and its affiliated VTEP, and reduce the complexity of network equipment and operation and maintenance for realizing communication of the clients based on VXLAN.
According to one of the aspects of the present disclosure, there is also provided a controller, including: the report information receiving module is configured to receive network layer reachable information from different VTEPs; a matching module configured to match, for each VTEP, network reachable information from other VTEPs that have associated the same VNI information with a local client associated with the VTEP; and the information issuing module is configured to send the remote client communication information to the VTEP according to the network reachable information successfully matched by the matching module, wherein the remote client communication information comprises the address of the remote client, the VNI associated with the remote client and the VTEP associated with the remote client in the network reachable information successfully matched.
According to one aspect of the present disclosure, there is further provided a controller, including: a memory; and a processor coupled to the memory, the processor configured to perform any of the VXLAN communication methods performed by the controller based on instructions stored in the memory.
Such a controller can aggregate and distribute local client information provided by each VTEP, so that the VTEP determines VNIs associated with each remote client and its affiliated VTEPs, thereby reducing network equipment and operation and maintenance complexity for realizing communication of the clients based on VXLAN.
According to yet another aspect of the present disclosure, a computer-readable storage medium is provided, having stored thereon computer program instructions, which when executed by a processor, implement the steps of any of the above VXLAN communication methods performed by a controller.
By executing the instructions on such computer-readable storage media, the local client information provided by each VTEP can be aggregated and distributed, so that the VTEP determines the VNI associated with each remote client and its affiliated VTEP, and the network equipment and operation and maintenance complexity for realizing communication of the clients based on VXLAN are reduced.
Additionally, according to one aspect of the present disclosure, there is provided a VXLAN, comprising: a controller of any of the above; and, a plurality of VTEPs of any of the above.
In such a network, each VTEP can perform interaction of local client information by means of the controller, determine VNIs associated with each client and VTEPs to which the client belongs, and reduce network equipment and operation and maintenance complexity for realizing communication of the client based on VXLAN.
Drawings
The accompanying drawings, which are included to provide a further understanding of the disclosure and are incorporated in and constitute a part of this disclosure, illustrate embodiments of the disclosure and together with the description serve to explain the disclosure and not to limit the disclosure. In the drawings:
fig. 1 is a schematic diagram of a hardware forwarding device of VXLAN.
Fig. 2 is a schematic diagram of a host implementation of VXLAN.
Fig. 3 is a flow diagram of one embodiment of a VXLAN communication method of the present disclosure.
Fig. 4 is a flowchart of an embodiment of message forwarding in the VXLAN communication method of the present disclosure.
Fig. 5 is a flow diagram of another embodiment of a VXLAN communication method of the present disclosure.
Fig. 6 is a schematic diagram of one embodiment of a VTEP of the present disclosure.
Fig. 7 is a schematic diagram of one embodiment of a controller of the present disclosure.
Fig. 8 is a schematic diagram of another embodiment of a VTEP or controller of the present disclosure.
Fig. 9 is a schematic diagram of yet another embodiment of a VTEP or controller of the present disclosure.
Fig. 10 is a schematic diagram of one embodiment of VXLAN of the present disclosure.
Fig. 11 is a signaling interaction diagram for one embodiment of VXLAN of the present disclosure.
Detailed Description
The technical solution of the present disclosure is further described in detail by the accompanying drawings and examples.
The implementation mechanism of VXLAN is partially introduced in rfc (request For comments)7348, and includes: after adding a VXLAN header to an Ethernet frame of a virtual network, a source VTEP encapsulates the Ethernet frame in a UDP (User Data Protocol) in a physical network, then transmits the UDP message in a communication mode of a traditional IP network, and after reaching a destination VTEP, removes the header information and the VXLAN header of the physical network message, and delivers the original Ethernet frame to a destination terminal.
As shown in fig. 1: the two terminals T1 and T2 are located in different networks and are intercommunicated through a router, the two terminals can be logically located in the same link layer network through VXLAN, and a router directly connected with the two terminals also logically constructs a channel VXLAN tunnel in a virtual link, and such a router is called VTEP. Note that, although the VTEP node may be a hardware device such as a switch or a router that implements a VXLAN function, in many cases, as shown in fig. 2, in an application that implements a network topology based on a virtualization technology, the VTEP node is more likely to be a middle software layer process in a host in which a plurality of virtual machines are deployed.
In the communication process, the VTEP is required to discover the mapping relationship between the remote destination MAC and the VTEP.
A flow diagram of one embodiment of the VXLAN communication method of the present disclosure is shown in fig. 3.
In step 301, the VTEP receives client information from a local client, the client information including address information of the client and VNI (Vxlan Network Identifier) information associated with the client. In one embodiment, the address information of the client can include MAC address information and IP address information for application in VXLAN message forwarding.
In step 302, the VTEP generates network layer reachable information from the client information and reports it to the controller. In one embodiment, the network reachability information includes the address of the local client and the VNI associated with the client, as well as address information for the VTEP itself.
In step 303, the VTEP receives remote client communication information from the controller, the remote client information including an address of the remote client, a VNI associated with the remote client, and information of a VTEP associated with the remote client. In one embodiment, the implication of a client being associated with a VTEP is that the VTEP acts as a gateway for the client to communicate externally using VXLAN without the need for a direct connection relationship.
In step 304, a VRF is generated for message forwarding based on the remote client communication information. In one embodiment, the VTEP may use the VNI information as an index, and generate the VRF according to the address information of the local client, the information of the VTEP associated with the client, and the address information of the remote client and the information of the VTEP associated with the client, so as to facilitate searching for the entries associated with the same VNI, which is beneficial to improving the forwarding efficiency.
By the method, the VTEP can perform local client information interaction by the controller, and the VNI associated with each client and the VTEP to which the VNI belongs are determined, so that the network equipment and the operation and maintenance complexity for realizing communication of the clients based on VXLAN are reduced.
In one embodiment, the remote client communications received by the VTEP include and only include communications of remote clients associated with the same VNI as the local client of the VTEP, thereby avoiding unnecessary messaging, improving the efficiency of messaging, and reducing the requirements on VTEP storage space and lookup capabilities.
In the requirement of VXLAN, it is proposed to implement IP forwarding of unknown unicast, multicast, and broadcast frames in a virtual network by multicast, which requires the IP network to support multicast, thereby increasing the complexity of network configuration management. By the method in the embodiment, the VTEP can generate the route forwarding table comprising the IP address, so that the network equipment and the operation and maintenance management are prevented from being too complicated.
In one embodiment, the VTEP may learn the MAC/IP address information and the associated VNI identifier of the local client by receiving a normal or free address resolution request packet sent by the client, and dynamically maintain the correspondence table between the MAC/IP address pairs of the local client information and the associated VNI identifier.
By the method, the client information can be learned based on the existing request message, so that the method is convenient to popularize and apply; the information of the local client can be dynamically maintained, so that the success rate of message forwarding is improved conveniently.
In one embodiment, after the VTEP updates the client information, the network layer reachable information is reported to the controller in time, so that the controller dynamically updates the stored information, and issues and updates the routing forwarding table to other VTEPs, thereby further improving the success rate of message forwarding.
A flowchart of an embodiment of a message forwarding portion of the VXLAN communication method of the present disclosure is shown in fig. 4.
In step 401, the VTEP receives a communication request from a local source client. In one embodiment, the communication request from the local source client may be an ARP (Address Resolution Protocol) request sent by the local client to the remote client IP Address.
In step 402, the address of the destination client is looked up in a route forwarding entry having the same VNI as the VNI associated with the source client. In one embodiment, the VTEP may look up the VNI associated with the source client based on its own stored local client information, and then look up the MAC address of the destination client in a route forwarding entry associated with the same VNI indexed by the VNI.
In step 403, it is determined whether the VNI associated with the source client is found to be associated with an address of the same VNI client. If so, go to step 404.
In step 404, the proxy destination client replies to the source client to cause the source client to send an ethernet frame.
In step 405, when the ethernet frame from the source client is received, the IP address of the VTEP of the remote client is searched in the VRF associated with the VNI associated with the source client and the same VNI, and a VXLAN packet is generated according to the ethernet frame and forwarded to the VTEP associated with the destination client.
By the method, the VXLAN routing forwarding table can be searched in the VTEP, and a VXLAN tunnel can be conveniently and quickly established; the VTEP can proxy the response of the destination client, so that the load of a VXLAN tunnel is reduced, the source client is prompted to quickly send the Ethernet frame, and the message transmission efficiency is improved.
A flow diagram of another embodiment of the VXLAN communication method of the present disclosure is shown in fig. 5.
In step 501, the controller receives network layer reachability information from different VTEPs. In one embodiment, the network reachability information includes the address of the local client and the VNI associated with the client, as well as address information for the VTEP itself.
In step 502, for each VTEP, the controller matches network reachability information from other VTEPs that have the same VNI information associated with the local client associated with the VTEP.
In step 503, the controller sends remote client communication information to the VTEP according to the successfully matched network reachability information, where the remote client communication information includes the address of the remote client, the VNI associated with the remote client, and the VTEP associated with the remote client in the successfully matched network reachability information.
By the method, the local client information provided by each VTEP can be aggregated and distributed, so that the VTEP determines the VNI associated with each remote client and the VTEP to which the remote client belongs, and the communication of the client based on VXLAN is realized with low network equipment and operation and maintenance complexity.
In one embodiment, the controller may be an SDN controller, and the VTEP may be implemented by a hardware device such as a switch or a router that implements a VXLAN function, so as to facilitate popularization and application.
In one embodiment, a modified MP-BGP (Multiprotocol Extensions for BGP) may run between the VTEP and the SDN controller. The VTEP sending network layer reachability information to the SDN controller may be implemented by defining VXLAN NLRI path attributes in an improved MP-BGP message, and the format of the message may be as shown in table 1:
table 1 VXLAN NLRI segment format defined in MP-BGP messages
Figure BDA0001700588750000091
In the above message format, in the sub-address familial character field, an IANA (Internet Assigned Numbers Authority) unreserved value, for example, 81, is Assigned to VXLAN.
The NLRI information in the MP-BGP update message that VTEP advertises to the controller is as follows:
next hop network address field: the IP address of the announcing VTEP itself is filled in.
VNI identification field: the globally unique VXLAN member identification is filled in.
Repeatable MAC/IP address pair field: one or more locally learned client MAC/IP addresses are populated.
Similarly, the controller advertises the remote client traffic to the VTEP via the NLRI field in the modified MP-BGP message:
next hop network address field: the IP address of the remote advertised VTEP is not changed.
VNI identification field: and filling in the EVPN member identification which is globally unique.
Repeatable MAC/IP address pair field: one or more remote client MAC/IP addresses are populated.
In one embodiment, the controller may dynamically maintain the VTEP and VNI identification information to which the client MAC/IP address belongs as follows:
TABLE 2 controller dynamic maintenance information Format
VTEP IP address Customer MAC/IP address VNI identification
By the method, the controller can dynamically maintain the VTEP and VNI identification information to which the MAC/IP address of the client belongs, and timely send an update message to the related VTEP when the change occurs, so that the VTEP can timely grasp VXLAN network dynamics.
A schematic diagram of one embodiment of the VTEP of the present disclosure is shown in fig. 6.
The client information receiving module 61 is capable of receiving client information from the local client, the client information including address information of the client and VNI information associated with the client. The report information generation module 62 can generate network layer reachable information from the client information. In one embodiment, the network reachability information includes the address of the local client and the VNI associated with the client, as well as address information for the VTEP itself. The information reporting module 63 is capable of reporting the generated network layer reachable information to the controller. In one embodiment, the controller may be an SDN controller. The remote-information receiving module 64 is capable of receiving remote-client communications from the controller, the remote-client communications including information on the address of the remote client, the VNI associated with the remote client, and the VTEP associated with the remote client. VRF generation module 65 can generate VRFs for message forwarding based on remote client communication information. In one embodiment, the VTEP may use the VNI information as an index, and generate the VRF according to the address information of the local client, the information of the VTEP associated with the client, and the address information of the remote client and the information of the VTEP associated with the client, so as to facilitate searching for the entries associated with the same VNI, which is beneficial to improving the forwarding efficiency.
The VTEP can perform local client information interaction by means of the controller, determine VNIs associated with the clients and VTEPs to which the VNIs belong, and realize communication of the clients based on VXLAN with low network equipment and operation and maintenance complexity.
In one embodiment, the remote client communication received by the remote information receiving module 64 includes and only includes communication of remote clients having the same VNI associated with the local client of the VTEP, thereby avoiding unnecessary information transmission, improving efficiency of information interaction, and reducing requirements for storage space and lookup capability of the VTEP.
In one embodiment, the VTEP may further include a communication request receiving module 66, a destination client information lookup module 67, a proxy reply module 68, and a message generation and transmission module 69.
The communication request receiving module 66 is capable of receiving a communication request from a local source client. The destination client information lookup module 67 looks up the address of the destination client in a route forwarding entry having the same VNI as the VNI associated with the source client. In one embodiment, the destination client information lookup module 67 may lookup the VNI associated with the source client based on its own stored local client information, and then lookup the MAC address of the destination client in a routing forwarding table entry associated with the same VNI by using the VNI as an index. The proxy reply module 68 is capable of, in the event that the destination client information look-up module 67 finds that the VNI associated with the source client is associated with the address of the same VNI client, replying the destination client to the source client to cause the source client to send an ethernet frame. The message generation and transmission module 69 is capable of generating a VXLAN message from the ethernet frame upon receipt of the ethernet frame from the source client and forwarding the VXLAN message to the VTEP associated with the destination client.
The VTEP can search a VXLAN routing forwarding table, and a VXLAN tunnel can be conveniently and quickly established; the VTEP can proxy the response of the destination client, so that the load of a VXLAN tunnel is reduced, the source client is prompted to quickly send the Ethernet frame, and the message transmission efficiency is improved.
A schematic diagram of one embodiment of the controller of the present disclosure is shown in fig. 7. The reported information receiving module 71 can receive network layer reachable information from different VTEPs. In one embodiment, the network reachability information includes the address of the local client and the VNI associated with the client, as well as address information for the VTEP itself. The matching module 72 may be capable of matching, for each VTEP, network-reachable information from other VTEPs that have the same VNI information associated with the local client associated with the VTEP. The information issuing module 73 can send the remote client communication information to the VTEP according to the successfully matched network reachability information, where the remote client communication information includes the address of the remote client, the VNI associated with the remote client, and the information of the VTEP associated with the remote client in the successfully matched network reachability information.
Such a controller can aggregate and distribute local client information provided by each VTEP, so that the VTEP determines VNIs associated with each remote client and VTEPs to which the remote clients belong, and the communication of the clients based on VXLAN is realized with low network equipment and operation and maintenance complexity.
A schematic diagram of the structure of one embodiment of the VTEP of the present disclosure is shown in fig. 8. The VTEP includes a memory 801 and a processor 802. Wherein: the memory 801 may be a magnetic disk, flash memory, or any other non-volatile storage medium. The memory is for storing instructions in the corresponding embodiments performed by the VTEP in the VXLAN communication method above. Coupled to the memory 801, the processor 802 may be implemented as one or more integrated circuits, such as a microprocessor or microcontroller. The processor 802 is configured to execute instructions stored in memory to enable client VXLAN-based communications with reduced network device and operation and maintenance complexity.
In one embodiment, VTEP 900 may also be shown in fig. 9 as comprising a memory 901 and a processor 902. The processor 902 is coupled to the memory 901 via a BUS 903. The VTEP 900 may also be coupled to external storage 905 for use in accessing external data via storage interface 904, and may also be coupled to a network or another computer system (not shown) via network interface 906. The specific operating logic will not be described in detail herein.
In this embodiment, the VXLAN-based communication of the client can be achieved with lower network device and operation and maintenance complexity by storing data instructions in the memory and processing the instructions by the processor.
In another embodiment, the present disclosure also proposes a computer-readable storage medium having stored thereon computer program instructions which, when executed by a processor, implement the steps of the method in the VXLAN communication method, in the corresponding embodiment as performed by the VTEP part. As will be appreciated by one skilled in the art, embodiments of the present disclosure may be provided as a method, apparatus, or computer program product. Accordingly, the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present disclosure may take the form of a computer program product embodied on one or more computer-usable non-transitory storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
A schematic diagram of an embodiment of the controller of the present disclosure is shown in fig. 8. The controller includes a memory 801 and a processor 802. Wherein: the memory 801 may be a magnetic disk, flash memory, or any other non-volatile storage medium. The memory is for storing instructions in the corresponding embodiments executed by the controller in the VXLAN communication method above. Coupled to the memory 801, the processor 802 may be implemented as one or more integrated circuits, such as a microprocessor or microcontroller. The processor 802 is configured to execute instructions stored in memory to enable client VXLAN-based communications with reduced network device and operation and maintenance complexity.
In one embodiment, as also shown in fig. 9, the controller 900 includes a memory 901 and a processor 902. The processor 902 is coupled to the memory 901 via a BUS 903. The controller 900 may also be coupled to external storage 905 for use in accessing external data via storage interface 904, and may also be coupled to a network or another computer system (not shown) via network interface 906. And will not be described in detail herein.
In this embodiment, the VXLAN-based communication of the client can be achieved with lower network device and operation and maintenance complexity by storing data instructions in the memory and processing the instructions by the processor.
In another embodiment, a computer readable storage medium is also presented having stored thereon computer program instructions which, when executed by a processor, implement the steps of a VXLAN communication method executed by a controller, the method of the corresponding embodiment. As will be appreciated by one skilled in the art, embodiments of the present disclosure may be provided as a method, apparatus, or computer program product. Accordingly, the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present disclosure may take the form of a computer program product embodied on one or more computer-usable non-transitory storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
A schematic diagram of one embodiment of VXLAN of the present disclosure is shown in fig. 10. The controller 1001 may be any of the controllers mentioned above. VTEP1011, 1002 may be any of the VTEPs mentioned above. There may be multiple VTEPs in VXLAN. Taking fig. 10 as an example:
1. VTEP1011 and VTEP1012 send MP-BGP update messages to controller 1001 advertising the MAC/IP address pairs of local clients and the associated VNI identification, and the next hop network address field is filled in advertising the IP address of VTEP1011 itself. VTEP1011 sends an MP-BGP update message to controller 1001 when one or both of the dynamically maintained MAC/IP address pair of the local client or its associated VNI identification changes. For example, VTEP1011 updates the client information as shown in table 3:
table 3 local client information updated by VTEP1011
Local client MAC/IP address pair Associating VNIs
MAC1/IP1 100
MAC2/IP2 200
The client information updated by VTEP1012 is shown in table 4:
table 4VTEP 1012 updated local client information
Local client MAC/IP address pair Associating VNIs
MAC3/IP3 100
MAC4/IP4 200
2. The controller receives MP-BGP update messages sent by VTEP1011 and VTEP1012, automatically discovers the association corresponding relation between VTEP and VNI identification and customer MAC/IP address pair, and dynamically maintains VTEP and VNI identification information to which the whole network customer MAC/IP address pair belongs. By parsing MP-BGP update messages of VTEP1011 and VTEP1012, the controller automatically discovers that VTEP1011 and VTEP1012 are both associated with VNI 100 and VNI 200, and dynamically maintains a table of VTEP and VNI identification information to which the network-wide client MAC/IP address pairs belong, as shown in table 5:
TABLE 5 information Table maintained by the controller
VTEP IP address Customer MAC/IP address pair VNI identification
VTEP1 MAC1/IP1 100
VTEP1 MAC2/IP2 200
VTEP2 MAC3/IP3 100
VTEP2 MAC4/IP4 200
3. The controller forwards to VTEP1011 belonging to VNI 100 an MP-BGP update message from VTEP1012 containing remote client MAC3/IP3 address pair information associated with remote VTEP 1012.
Likewise, the controller also forwards to VTEP1012 belonging to VNI 100 an MP-BGP update message from VTEP1011, containing remote client MAC1/IP1 address pair information associated with remote VTEP 1011.
The controller forwards an MP-BGP update message from VTEP1012 to VTEP1011 belonging to VNI 200, containing remote client MAC4/IP4 address pair information associated with remote VTEP 1012.
Likewise, the controller also forwards to VTEP1012 belonging to VNI 200 an MP-BGP update message from VTEP1011, containing remote client MAC2/IP2 address pair information associated with remote VTEP 1011.
4. VTEP1011 receives MP-BGP update messages from the controller, installs the remote client MAC3/IP3 address pair information and the IP address of remote VTEP1012 in the VRF associated with VNI 100; the remote customer MAC4/IP4 address pair information and the IP address of the remote VTEP1012 are installed in the VRF associated with VNI 200. The VRFs of the gateway are as follows:
TABLE 6 VRF of VNI 100 generated by VTEP1011
VNI identification MAC/IP address pair Remote VTEP
100 MAC1/IP1 Local area
100 MAC3/IP3 VTEP2
TABLE 7 VRF of VNI 200 generated by VTEP1011
VNI identification MAC/IP address pair Remote VTEP
200 MAC2/IP2 Local area
200 MAC4/IP4 VTEP2
TABLE 8 VRF of VNI 100 generated by VTEP1012
VNI identification MAC/IP address pair Remote VTEP
100 MAC3/IP3 Local area
100 MAC1/IP1 VTEP1
TABLE 9 VRF of VNI 200 generated by VTEP1012
VNI identification MAC/IP address pair Remote VTEP
200 MAC4/IP4 Local area
200 MAC2/IP2 VTEP1
The communication process between the VTEP and the controller is suspended until the next time a change occurs in the client, client MAC/IP address pair associated with the VTEP, or the VNI to which the client belongs.
When VTEP1011 receives an ARP request sent by local client MAC1 to remote client IP3, it looks up the MAC3 address corresponding to remote client IP3 in the VRF associated with the corresponding VNI 100 and proxies the remote client to reply with an ARP reply containing the remote client MAC1 address.
When VTEP1011 receives an ethernet frame sent from local client MAC1 to remote client MAC3, the IP address of the VTEP of remote client MAC3 is searched in the VRF corresponding to VNI 100 as the address of VTEP1012, and a VXLAN packet is constructed and sent to remote destination VTEP 1012.
In the network, each VTEP can perform interaction of local client information by virtue of the controller, determine VNIs associated with each client and VTEPs to which the VNIs belong, and realize address learning through a control plane, so that the existing IP network does not need to support multicast, and communication of the clients based on VXLAN is realized with lower network equipment and operation and maintenance complexity.
The signaling interaction diagram for one embodiment of VXLAN of the present disclosure is shown in fig. 11.
In 1101, VTEP1101 sends an MP-BGP update message to controller 1102 announcing the local client MAC/IP address pair and associated VNI identification correspondence, and the next hop network address field is filled with the announcing VTEP's own IP address.
In 1102, the controller 1102 receives an MP-BGP update message sent by the VTEP1101 over the network, automatically discovers association correspondence between VTEPs and VNI identifiers and information of client MAC/IP address pairs, and dynamically maintains VTEP and VNI identifier information to which the client MAC/IP address pairs over the network belong.
In 1103, the controller 1102 forwards an MP-BGP update message, containing remote customer MAC/IP address pair information associated with the remote VTEP, to the VTEP1101 belonging to the same VNI identity. The VNI identifier of the VTEP is the same as the VNI identifier of the client belonging to the VTEP, and if the local client of the VTEP is associated with a different VNI identifier, the VNI identifier of the VTEP is different, that is, the VTEP may be identified by multiple VNIs.
At 1104, the VTEP receives the MP-BGP update message from the controller, installing the remote customer MAC/IP address pair information and the remote VTEP IP address in the VRF associated with the VNI identification.
In the VXLAN, the VTEP can inform the controller of the MAC/IP address of the client learned locally and the affiliated VXLAN (namely VNI), and the controller can automatically discover the corresponding relation between the VTEP and the VXLAN and the association relation between the client MAC and the VTEP, dynamically maintain the MAC/IP address pair information of the client in the whole network and directionally inform the VTEP belonging to the same VXLAN of the MAC/IP address of the remote client.
The present disclosure is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the disclosure. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
Thus far, the present disclosure has been described in detail. Some details that are well known in the art have not been described in order to avoid obscuring the concepts of the present disclosure. It will be fully apparent to those skilled in the art from the foregoing description how to practice the presently disclosed embodiments.
The methods and apparatus of the present disclosure may be implemented in a number of ways. For example, the methods and apparatus of the present disclosure may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware. The above-described order for the steps of the method is for illustration only, and the steps of the method of the present disclosure are not limited to the order specifically described above unless specifically stated otherwise. Further, in some embodiments, the present disclosure may also be embodied as programs recorded in a recording medium, the programs including machine-readable instructions for implementing the methods according to the present disclosure. Thus, the present disclosure also covers a recording medium storing a program for executing the method according to the present disclosure.
Finally, it should be noted that: the above examples are intended only to illustrate the technical solutions of the present disclosure and not to limit them; although the present disclosure has been described in detail with reference to preferred embodiments, those of ordinary skill in the art will understand that: modifications to the specific embodiments of the disclosure or equivalent substitutions for parts of the technical features may still be made; all such modifications are intended to be included within the scope of the claims of this disclosure without departing from the spirit thereof.

Claims (13)

1. A virtual extensible local area network (VXLAN) communication method comprises the following steps:
the VXLAN tunnel endpoint VTEP receives client information from a local client, wherein the client information comprises address information of the client and VXLAN network identification VNI information associated with the client;
generating network layer reachable information according to the client information, and reporting the network layer reachable information to a controller;
receiving remote client communication information from the controller for a remote client associated with the same VNI as the local client, the remote client communication information including an address of the remote client, a VNI associated with the remote client, and information of a VTEP associated with the remote client;
and generating a route forwarding table VRF according to the communication information of the remote client so as to forward the message.
2. The method of claim 1, wherein,
the network reachable information includes the address of the local client and the VNI associated with the client, as well as the address information of the VTEP itself.
3. The method of claim 1, wherein,
and the VRF is generated for the VTEP by taking the VNI information as an index according to the address information of the local client, the information of the VTEP related to the client, and the address information of the remote client and the information of the VTEP related to the client.
4. The method of claim 3, further comprising:
the VTEP receives a communication request from a local source client to a destination client;
searching the address of the destination client in a routing forwarding table entry of which the VNI associated with the source client has the same VNI;
if the target client is found, the target client is proxied to answer the source client;
and when receiving the Ethernet frame sent from the source client to the destination client, generating a VXLAN message according to the Ethernet frame and forwarding the VXLAN message to the VTEP associated with the destination client.
5. A virtual extensible local area network (VXLAN) communication method comprises the following steps:
the controller receives network layer reachable information from different VXLAN tunnel end points VTEP;
for each VTEP, matching network reachable information from other VTEPs for which local clients associated with the VTEP have associated the same VXLAN network identification VNI information;
and sending remote client communication information to the VTEP according to the successfully matched network reachability information, wherein the remote client communication information comprises the address of the remote client, the VNI associated with the remote client and the information of the VTEP associated with the remote client in the successfully matched network reachability information.
6. A virtual extended local area network tunnel endpoint, VTEP, comprising:
the client information receiving module is configured to receive client information from a local client, wherein the client information comprises address information of the client and virtual extensible local area network (VXLAN) network identification (VNI) information associated with the client;
the report information generating module is configured to generate network layer reachable information according to the client information;
an information reporting module configured to report the network layer reachable information to a controller;
a remote information receiving module configured to receive remote client communication information from the controller for a remote client associated with the same VNI as the local client, the remote client communication information including an address of the remote client, a VNI associated with the remote client, and information of a VTEP associated with the remote client;
and the VRF generation module is configured to generate VRF according to the communication information of the remote client machine so as to forward the message.
7. The VTEP of claim 6, further comprising:
a communication request receiving module configured to receive a communication request from a local source client to a destination client;
a destination client information lookup module configured to lookup an address of a destination client in a route forwarding entry having the same VNI as a VNI associated with the source client;
the proxy response module is configured to proxy the destination client to respond to the source client under the condition that the destination client information search module finds the destination client information;
and the message generating and sending module is configured to generate a VXLAN message according to the Ethernet frame when the Ethernet frame from the source client is received, and forward the VXLAN message to the VTEP associated with the destination client.
8. A virtual extended local area network tunnel endpoint, VTEP, comprising:
a memory; and
a processor coupled to the memory, the processor configured to perform the method of any of claims 1-4 based on instructions stored in the memory.
9. A computer readable storage medium having stored thereon computer program instructions which, when executed by a processor, implement the steps of the method of any one of claims 1 to 4.
10. A controller, comprising:
the report information receiving module is configured to receive network layer reachable information from different virtual extensible local area network VXLAN tunnel end points VTEP;
a matching module configured to match, for each VTEP, network reachability information from other VTEPs that have the same VXLAN network identification VNI information associated with a local client associated with the VTEP;
and the information issuing module is configured to send remote client communication information to the VTEP according to the network reachable information successfully matched by the matching module, wherein the remote client communication information comprises the address of the remote client, the VNI associated with the remote client and the information of the VTEP associated with the remote client in the network reachable information successfully matched.
11. A controller, comprising:
a memory; and
a processor coupled to the memory, the processor configured to perform the method of claim 5 based on instructions stored in the memory.
12. A computer readable storage medium having stored thereon computer program instructions which, when executed by a processor, implement the steps of the method of claim 5.
13. A virtual extended local area network, VXLAN, comprising:
the controller of claim 10 or 11; and the combination of (a) and (b),
a plurality of virtual extended local area network tunnel end points, VTEPs, according to any of claims 6 to 8.
CN201810632394.0A 2018-06-20 2018-06-20 Virtual extended local area network communication method, tunnel endpoint and controller Active CN110620715B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810632394.0A CN110620715B (en) 2018-06-20 2018-06-20 Virtual extended local area network communication method, tunnel endpoint and controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810632394.0A CN110620715B (en) 2018-06-20 2018-06-20 Virtual extended local area network communication method, tunnel endpoint and controller

Publications (2)

Publication Number Publication Date
CN110620715A CN110620715A (en) 2019-12-27
CN110620715B true CN110620715B (en) 2021-10-22

Family

ID=68920360

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810632394.0A Active CN110620715B (en) 2018-06-20 2018-06-20 Virtual extended local area network communication method, tunnel endpoint and controller

Country Status (1)

Country Link
CN (1) CN110620715B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115766434A (en) * 2021-09-03 2023-03-07 中国移动通信集团山东有限公司 VXLAN configuration method and equipment
CN115987889A (en) * 2022-12-26 2023-04-18 迈普通信技术股份有限公司 Virtual network communication method, device, computer equipment and storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104115453A (en) * 2013-12-31 2014-10-22 华为技术有限公司 Method and device for achieving virtual machine communication
CN104935516A (en) * 2015-06-17 2015-09-23 武汉邮电科学研究院 Communication system based on software defined network and communication method
WO2016045608A1 (en) * 2014-09-26 2016-03-31 Hangzhou H3C Technologies Co., Ltd. Processing a flow entry in vxlan
CN106331206A (en) * 2015-06-30 2017-01-11 杭州华三通信技术有限公司 Domain name management method and device
CN106612224A (en) * 2015-10-26 2017-05-03 杭州华三通信技术有限公司 Message forwarding method and device applied to VXLAN (Virtual eXtensible LAN)
CN106850379A (en) * 2015-12-04 2017-06-13 中国电信股份有限公司 Method and system for realizing subnet intercommunication
CN107995083A (en) * 2016-10-27 2018-05-04 中国电信股份有限公司 Realize the method, system and equipment of L2VPN and VxLAN intercommunications

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104104747B (en) * 2014-07-28 2017-08-08 新华三技术有限公司 Message transmitting method and device
CN105634770B (en) * 2014-10-29 2019-05-07 新华三技术有限公司 The method and apparatus for disposing virtual extended local area network
US10171559B2 (en) * 2014-11-21 2019-01-01 Cisco Technology, Inc. VxLAN security implemented using VxLAN membership information at VTEPs

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104115453A (en) * 2013-12-31 2014-10-22 华为技术有限公司 Method and device for achieving virtual machine communication
WO2016045608A1 (en) * 2014-09-26 2016-03-31 Hangzhou H3C Technologies Co., Ltd. Processing a flow entry in vxlan
CN104935516A (en) * 2015-06-17 2015-09-23 武汉邮电科学研究院 Communication system based on software defined network and communication method
CN106331206A (en) * 2015-06-30 2017-01-11 杭州华三通信技术有限公司 Domain name management method and device
CN106612224A (en) * 2015-10-26 2017-05-03 杭州华三通信技术有限公司 Message forwarding method and device applied to VXLAN (Virtual eXtensible LAN)
CN106850379A (en) * 2015-12-04 2017-06-13 中国电信股份有限公司 Method and system for realizing subnet intercommunication
CN107995083A (en) * 2016-10-27 2018-05-04 中国电信股份有限公司 Realize the method, system and equipment of L2VPN and VxLAN intercommunications

Also Published As

Publication number Publication date
CN110620715A (en) 2019-12-27

Similar Documents

Publication Publication Date Title
US9992154B2 (en) Layer 3 convergence for EVPN link failure
US9264362B2 (en) Proxy address resolution protocol on a controller device
CN105450437B (en) SID distribution method and SR node
US10057116B2 (en) Method and device for configuring and managing network element equipment, and network element equipment
US9225641B2 (en) Communication between hetrogenous networks
US11374857B2 (en) Network device management method and apparatus, and system for indicating a network device to perform management operation
EP2897347B1 (en) Method for transmitting addresses correspondence relationship in second-layer protocol using link status routing
US9178816B1 (en) Control plane messaging in all-active multi-homed ethernet virtual private networks
US8879569B2 (en) Virtual network connection method, network system, and network device
US20140112349A1 (en) Overlay services in communication networks
US9749239B2 (en) Transparent Rbridge
US11477114B2 (en) Packet forwarding method and apparatus
CN108964940B (en) Message sending method and device and storage medium
CN104935516A (en) Communication system based on software defined network and communication method
EP2654250A2 (en) Virtual local area network identity transformation method and apparatus
US9143437B1 (en) Apparatus and method for multicast data packet forwarding
US11362954B2 (en) Tunneling inter-domain stateless internet protocol multicast packets
CN108156067B (en) Method and system for realizing Ethernet-based virtual private network
WO2022121466A1 (en) Data processing method and device for ethernet virtual private network, and storage medium
CN110620715B (en) Virtual extended local area network communication method, tunnel endpoint and controller
US20230188457A1 (en) Bier overlay signaling enhancement
US20230081052A1 (en) Method and apparatus for sending multicast packet
CN109391534B (en) Access mode updating method and device
WO2020152691A1 (en) Multi-network internet protocol version 6 (ipv6) duplicate address detection using ethernet virtual private network (evpn)
US11632268B2 (en) Generating route target values for virtual private network routes

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant