WO2016107269A1 - 虚拟可扩展本地区域网络中数据传输的设备和方法 - Google Patents

虚拟可扩展本地区域网络中数据传输的设备和方法 Download PDF

Info

Publication number
WO2016107269A1
WO2016107269A1 PCT/CN2015/093583 CN2015093583W WO2016107269A1 WO 2016107269 A1 WO2016107269 A1 WO 2016107269A1 CN 2015093583 W CN2015093583 W CN 2015093583W WO 2016107269 A1 WO2016107269 A1 WO 2016107269A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual network
sub
identifier
virtual
network
Prior art date
Application number
PCT/CN2015/093583
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 WO2016107269A1 publication Critical patent/WO2016107269A1/zh

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

Definitions

  • the present invention relates to the field of information technology, and in particular, to an apparatus and method for data transmission in a virtual scalable local area network VXLAN.
  • VXLAN Virtual eXtensible Local Area Network
  • a campus building has a virtual network A
  • the experimental building has a virtual network B.
  • the teaching building and the experimental building are physically separated by a certain distance.
  • the virtual network in the teaching building and the virtual network in the experimental building need to pass.
  • the network carries out information transfer and data exchange.
  • the network of the experimental building may also contain more than one vlan, when a vlan10 in the teaching building, for example, a group of a teacher group, needs
  • the data sent by the teaching building vlan10 is required to be transmitted to the sub-virtual network identified as vlan10 after being transmitted to the experimental building through the network, so that the information and data sent by the same group can be realized. Received in another virtual network.
  • the vlan10 logo in the experimental building may have been occupied by other businesses, such as student groups.
  • the data sent from the teaching building vlan10 can not be checked by the members of the teacher group after being transmitted to the experimental building through the network.
  • the user in the same vlan cannot communicate with each other on more than two virtual networks.
  • the networking is not flexible enough to affect the normal forwarding of user services.
  • the embodiments of the present invention provide a device and a method for data transmission in a VXLAN, so as to solve the problem that the networking of the different virtual networks must be the same when the data is forwarded.
  • an embodiment of the present invention provides a device for data transmission in a virtual scalable local area network VXLAN, including a central processing unit, a memory, and a tunnel termination module; the central processing unit and the memory and the tunnel respectively The termination module is connected, and the tunnel termination module is configured to implement data forwarding of the first sub-virtual network in the first virtual network, where the tunnel termination module includes a data receiving unit, a sub-virtual network matching unit, and a data forwarding unit:
  • the data receiving unit is configured to receive data sent to the first sub-virtual network, and decapsulate the data
  • the sub-virtual network matching unit obtains, by the sub-virtual network matching unit, the saved sub-virtual network mapping table according to the identifier of the sub-virtual network of the second virtual network carried in the data, and acquiring the first corresponding to the sub-virtual network of the second virtual network An identifier of a destination sub-virtual network in a virtual network, wherein the first virtual network and the second virtual network implement forwarding of data through a network, and the sub-virtual network mapping table records sub-components of the second virtual network Correspondence between the virtual network and the destination sub-virtual network;
  • a data sending unit configured to send the decapsulated data to the destination sub-virtual network according to the identifier of the destination sub-virtual network in the first virtual network acquired by the sub-virtual network matching unit.
  • the tunnel termination module further includes a configuration receiving unit and a configuration processing unit;
  • the configuration processing unit is configured to: identify, according to the correspondence, an identifier of a sub-virtual network in which the service is not allocated in the first virtual network, and an identifier of the sub-virtual network in the second virtual network, and the second The correspondence between the virtual network identifier and the inter-network interconnection protocol IP of the tunnel termination module in the second virtual network is saved in the sub-virtual network mapping table.
  • the tunnel termination module further includes a configuration sending unit, in combination with the first aspect or the first possible implementation manner of the first aspect,
  • the configuration sending unit is configured to save the identifier of the sub-virtual network in which the service is not allocated in the first virtual network, the identifier of the sub-virtual network in the second virtual network, the second virtual network identifier, and The mapping between the IP addresses of the tunnel termination modules in the second virtual network is sent to the second virtual network, so that the tunnel termination module of the second virtual network will not allocate services in the first virtual network.
  • the identifier of the sub-virtual network, the identifier of the sub-virtual network in the second virtual network, the second virtual network identifier, and the IP of the tunnel termination module in the second virtual network are saved in the The sub-virtual network mapping table of the tunnel termination module of the second virtual network.
  • the sub-virtual network mapping table includes: an identifier, a location of the first virtual network An IP address of a tunnel termination module of the second virtual network, an identifier of the sub-virtual network in the second virtual network, and an identifier of the sub-virtual network in the first virtual network.
  • the sub-virtual network matching unit is configured according to the sub-virtual network of the second virtual network carried in the data Identifying, searching for the saved sub-virtual network mapping table, obtaining the second
  • the identifier of the destination sub-virtual network in the first virtual network corresponding to the sub-virtual network of the virtual network includes:
  • the sub-virtual network matching unit searches for the sub-virtual network according to the identifier of the second virtual network, the IP address of the tunnel termination module of the second virtual network, and the identifier of the sub-virtual network of the second virtual network. Mapping a table, obtaining an identifier of the sub-virtual network in the first virtual network.
  • the data forwarding unit is further configured to encapsulate data sent to the second virtual network, and The encapsulated data is sent to the data transmitting unit.
  • an embodiment of the present invention provides a data transmission method in a virtual scalable local area network (VXLAN), including:
  • the sub-virtual network mapping table searchesing the saved sub-virtual network mapping table according to the identifier of the sub-virtual network of the second virtual network carried in the data, and acquiring the destination in the first virtual network corresponding to the sub-virtual network of the second virtual network
  • the method before receiving the data sent to the first sub-virtual network, the method further includes:
  • the method further includes:
  • An identifier of the sub-virtual network in which the service is not allocated in the first virtual network, an identifier of the sub-virtual network in the second virtual network, the second virtual network identifier, and a tunnel in the second virtual network Corresponding relationship between the IPs of the terminating modules is sent to the second virtual network, so that the tunnel terminating module of the second virtual network identifies the sub-virtual network of the unassigned service in the first virtual network, and the a mapping between the identifier of the sub-virtual network in the virtual network, the second virtual network identifier, and the IP of the tunnel termination module in the second virtual network, where the tunnel termination module of the second virtual network is saved.
  • the child virtual network maps in the table.
  • the sub-virtual network mapping table includes: an identifier, a location of the first virtual network An IP address of a tunnel termination module of the second virtual network, an identifier of the sub-virtual network in the second virtual network, and an identifier of the sub-virtual network in the first virtual network.
  • the sending the data to be sent to the sub-virtual in the second virtual network includes:
  • the device and method for data transmission in the virtual scalable local area network VXLAN according to the embodiment of the present invention, according to the identifier of the sub-virtual network of the second virtual network carried in the received data, searching for the saved sub-virtual network mapping table, obtaining and The identifier of the destination sub-virtual network in the first virtual network corresponding to the sub-virtual network of the second virtual network may be implemented in a sub-virtual network that belongs to one virtual network, and may be flexibly configured according to the actual needs of the networking, so that different regions are The sub-virtual network can effectively forward data.
  • FIG. 1 is a schematic structural diagram of an implementation of a VXLAN tunnel termination point VTEP according to an embodiment of the present invention
  • FIG. 2 is a schematic diagram of a specific application scenario of a virtual network according to an embodiment of the present invention.
  • FIG. 3 is a schematic diagram of implementing the present invention in a specific application scenario of a virtual network according to an embodiment of the present invention
  • FIG. 4 is a schematic structural diagram of a device 400 for data transmission in a virtual scalable local area network VXLAN according to an embodiment of the present disclosure
  • FIG. 5 is a schematic diagram of another implementation structure of a device 400 for data transmission in a virtual scalable local area network VXLAN according to an embodiment of the present disclosure
  • FIG. 6 is a schematic flowchart of a data transmission method in a virtual scalable local area network VXLAN according to an embodiment of the present invention.
  • the VXLAN Terminal End Point is a function module on the server in the VXLAN network. It is used to receive Layer 2 packets from the tunnel and encapsulate Layer 2 packets into VXLAN packets.
  • the tunnel endpoint restores the encapsulated VXLAN packets to Layer 2 packets. That is, the VTEP is responsible for encapsulating and decapsulating the VXLAN tunnels to implement data forwarding between different virtual networks.
  • VTEP is a node in which a virtual network communicates with other virtual networks to transmit data. It can be a chip or a functional module on a server, or it can be a chip or a functional module in a switching device.
  • the virtual network may be a virtual network in a certain area, and multiple virtual networks implement interconnection and data forwarding through the network.
  • VTEP the implementation of VTEP on the server is taken as an example, and the central processing unit CPU 101, the memory 102 and the tunnel termination point VTEP 103 are included in the server.
  • the VTEP 103 implements its functions under the control of a central processor.
  • the VETP can also implement its functions in other devices (such as switching devices) or independent devices, and details are not described herein.
  • the following is an example of a device and method for data transmission in a VXLAN according to an embodiment of the present invention.
  • the three virtual networks respectively implement data forwarding between different virtual networks through respective VTEPs.
  • the sub-virtual network in the virtual network with the identifier of 4096 that is managed by VTEP1 includes vlan10, vlan20, and vlan30;
  • the sub-virtual network in the virtual network with the ID of 4096 that is managed by VTEP2 also includes vlan10, vlan20, and vlan30;
  • the identifier managed by VTEP3 is 4096.
  • the sub-virtual networks in the virtual network include vlan10, vlan20, and vlan30-50.
  • the virtual network identified by the network and the virtual network managed by VTEP3 is 4096.
  • the data in the same virtual network in the network is transmitted through the network.
  • a virtual network with vlan30 is identified in the virtual network managed by VTEP3, so that the data transmitted from vlan30 in VTEP1 can be forwarded to the destination by VTEP3.
  • a virtual network In a virtual network.
  • the identifier vlan30 in the virtual network managed by VTEP3 is already occupied, that is, vlan30 is occupied by the sub-virtual network corresponding to other services, so that when it is sent from vlan30 in VTEP1 to VTEP3, it will be VTEP3. It is forwarded to the sub-virtual network corresponding to vlan30, and the sub-virtual network is not the destination sub-virtual network to be sent by vlan30 managed by VTEP1. As a result, users in the same sub-virtual network cannot communicate with each other. The network networking is not flexible enough to affect users. Forwarding of data.
  • the sub-virtual network in the virtual network 3 that is not allocated service is used as the sub-virtual network corresponding to the sub-virtual network identified by the VTEP1 as the vlan30, and the correspondence table is established in the data.
  • the data is forwarded to the corresponding sub-virtual network.
  • Step S1 The VTEP of the first virtual network receives a configuration command, where the configuration command sets a correspondence between the identifier of the sub-virtual network in the first virtual network and the sub-virtual network identifier in the second virtual network.
  • the configuration command may be delivered through a user command line or a dedicated configuration management tool (such as VXLAN Manager).
  • a dedicated configuration management tool such as VXLAN Manager
  • the user can use the configuration command to deliver the configuration name and fame.
  • the user enters the local user's vlan (local Customer Vlan), the remote user's vlan (Remote Customer Vlan), and the VTEP of the remote user's virtual network.
  • Protocol IP address Remote Peer Ip
  • the virtual network where VTEP3 is located is the first virtual network
  • the virtual network where VTEP2 is located is the second virtual network.
  • the virtual network vlan30 is occupied by the virtual network with the identifier of 4096 managed by VTEP3.
  • the configuration is to configure an unoccupied sub-virtual network (for example, vlan 4094) as a sub-virtual network corresponding to the sub-virtual network vlan 30 in the virtual network identified by VTEP1 and identified as 4096.
  • the local Customer Vlan may be a sub-virtual network vlan of the unassigned service in the virtual network where VTEP3 is located in FIG. 2, for example, vlan4094; and the Remote Customer Vlan may be a sub-virtual network corresponding to vlan 30 in the virtual network managed by VTEP1.
  • Remote Peer Ip can be the IP address of VTEP1.
  • the configuration command can be as follows:
  • S2 The message sent by the VTEP of the first virtual network is sent, and if the message type is vxlan-customer-vlan-mapping, the Vlan identifier in the first virtual network and the Vlan identifier in the second area are determined according to the message. Correspondence between the two, and save the correspondence in the sub-virtual network mapping table.
  • the VTEP3 may invoke the vxlan-customer-vlan-mapping message processing function according to the vxlan-customer-vlan-mapping message, and extract the following parameters from the message:
  • VNIID Remote Peer Ip
  • Remote Customer Vlan Remote Customer Vlan
  • the VNI is the VXLAN network identifier
  • the VNIID is the ID of the VXLAN network identifier.
  • the correspondence between the sub-virtual network identifier in the first virtual network and the sub-virtual network identifier in the second virtual network may be as shown in Table 1:
  • the VNIID indicates the identifier of the virtual network, for example, the identifier 4096 of the virtual network in FIG. 2, and the remote Peer Ip indicates the IP address of the VTEP.
  • the IP address of VTEP1 in FIG. 2 is 10.10.10.1
  • the IP address of VTEP2 is 20.20.20.2.
  • the remote customer Vlan indicates the corresponding sub-virtual network identifier in the remote virtual network, for example, vlan30 in VTEP1 or vlan30 in VTEP2; the local customer Vlan and the sub-virtual network identifier corresponding to the local, for example, in Figure 2, the unassigned service in VTEP3
  • the child virtual network identifies vlan4094.
  • the method provided by the embodiment of the present invention may also back up the sub-virtual network mapping table in real time in a backup device such as a memory attached to the baseboard management controller BMC. After the server is powered off, the entries in the host memory are restored by the backup device.
  • a backup device such as a memory attached to the baseboard management controller BMC.
  • the VTEP of the first virtual network sends the configuration information to the VTEP of the designated second virtual network by using VTEP signaling, and the signaling channel and the message format may be as shown in FIG. 3.
  • VTEP3 (which may be the signaling distribution unit in VTEP3) fills in the corresponding values in the fields of the vxlan customer vlan mapping message, such as the values corresponding to the fields shown in Table 1, and sends the filled vxlan customer vlan mapping to VTEP1 and VTEP2.
  • the vxlan customer vlan mapping message sent to VTEP1 fill in 4096 in the VNIID field, 10.10.10.1 in the Remote Peer Ip field, 30 in the Remote Customer Vlan field, and 4094 in the Local Customer Vlan field.
  • the vxlan customer vlan mapping message sent to VTEP2 fill in 4096 in the VNIID field, 20.20.20.2 in the Remote Peer Ip field, 30 in the Remote Customer Vlan field, and 4094 in the Local Customer Vlan field.
  • the VTEP of the second virtual network After receiving the message of the VTEP of the first virtual network, the VTEP of the second virtual network saves the correspondence in the sub-virtual network mapping table of the VTEP of the second virtual network, and the sub-virtual network mapping table Saved in local host memory.
  • the sub-virtual network mapping table in the second virtual network can be as shown in Table 2:
  • the signaling receiving unit of the VTEP of the second virtual network may receive the message sent by the VTEP of the first virtual network. After receiving the message sent by the remote VTEP, the signaling receiving unit of the VTEP of the second virtual network first checks the validity of the message, and then parses the message type. For the VXLAN_CUSTOMER_VLAN_MAPPING message, invokes the Vlan mapping processing function in the signaling processing unit. For further processing.
  • the Vlan mapping processing function extracts information from the message structure body by field, and creates a hash table entry with VNIID, Local Ip, Local Customer Vlan as the Key, and Remote Customer Vlan as the Result, and adds the entry to the VLAN mapping table of the VTEP component. In the middle, the mapping table is also located in the host memory.
  • data forwarding may be implemented according to the relationship corresponding to the identifier of the sub-virtual network recorded in the sub-virtual network mapping table.
  • VTEP3 receives the data sent by the sub-virtual network with the identifier of vlan30 sent by VTEP1.
  • the source virtual network identifier of the decapsulated data is the sub-virtual network identifier vlan30 and vlan30 managed by VTEP1.
  • the virtual network identifier and the IP address of the VTEP1 are searched for the sub-virtual network mapping table, and the identifier of the sub-virtual network managed by the corresponding VTEP3 is obtained, and the data is sent to the sub-virtual network managed by the acquired VTEP3.
  • Virtual network Virtual network.
  • FIG. 4 is a schematic structural diagram of a device 400 for data transmission in a virtual scalable local area network VXLAN according to an embodiment of the present invention, including a central processing unit 401, a memory 402, and a tunnel termination module 403;
  • the 401 is connected to the memory 402 and the tunnel termination module 403, and the tunnel termination module 403 is configured to implement data forwarding of the first sub-virtual network in the first virtual network, where the tunnel termination module includes Data receiving unit 4031.
  • the data receiving unit 4031 is configured to receive data sent to the first sub-virtual network, and decapsulate the data;
  • the sub-virtual network matching unit 4032 searches for the saved sub-virtual network mapping table according to the identifier of the sub-virtual network of the second virtual network carried in the data, and obtains the corresponding to the sub-virtual network of the second virtual network.
  • the data sending unit 4033 is configured to send the decapsulated data to the destination sub-virtual network according to the identifier of the destination sub-virtual network in the first virtual network acquired by the sub-virtual network matching unit.
  • the device 400 for data transmission in the virtual scalable local area network VXLAN searches for the saved sub-virtual network mapping table by using the sub-virtual network matching unit 4032 according to the identifier of the sub-virtual network of the second virtual network carried in the data.
  • the identifier of the destination sub-virtual network in the first virtual network corresponding to the sub-virtual network of the second virtual network may be implemented in a sub-virtual network that belongs to one virtual network, and may be flexibly configured according to the actual needs of the networking, so that Sub-virtual networks in different regions can effectively forward data.
  • the tunnel termination module 403 further includes a configuration receiving unit 4034 and a configuration processing unit 4035;
  • the configuration receiving unit 4034 is configured to: identify, according to the correspondence, an identifier of a sub-virtual network in which the service is not allocated in the first virtual network, and an identifier of the sub-virtual network in the second virtual network, where the Corresponding relationship between the virtual network identifier and the IP of the tunnel termination module in the second virtual network is saved in the sub-virtual network mapping table;
  • the configuration processing unit 4035 is configured to: the first virtual network according to the correspondence relationship The correspondence between the identifier of the sub-virtual network in which the service is not allocated and the identifier of the sub-virtual network in the second virtual network is stored in the sub-virtual network mapping table.
  • the tunnel termination module 403 further includes a configuration sending unit 4036;
  • the configuration sending unit 4036 is configured to save the identifier of the sub-virtual network in the first virtual network that is not allocated service, the identifier of the sub-virtual network in the second virtual network, and the second virtual network identifier.
  • the mapping between the IP addresses of the tunnel termination modules in the second virtual network is sent to the second virtual network, so that the tunnel termination module of the second virtual network sends unassigned services in the first virtual network.
  • the identifier of the child virtual network, the identifier of the child virtual network in the second virtual network, the second virtual network identifier, and the IP of the tunnel termination module in the second virtual network are saved in the The sub-virtual network mapping table of the tunnel termination module of the second virtual network.
  • the tunnel termination module of the other virtual network can obtain the configured sub-virtual network correspondence, and when the data forwarding is implemented, the data can be accurately sent to the corresponding sub-virtual network.
  • the sub-virtual network mapping table in the embodiment of the present invention may include: an identifier of the first virtual network, an IP address of a tunnel termination module of the second virtual network, and a second virtual network neutron
  • the identifier of the virtual network and the identifier of the sub-virtual network in the first virtual network for example, the correspondence table shown in Table 1 above.
  • the sub-virtual network matching unit 4032 searches for the saved sub-virtual network mapping table according to the identifier of the sub-virtual network of the second virtual network carried in the data, and acquires a sub-virtual network with the second virtual network.
  • the identifier of the destination sub-virtual network in the corresponding first virtual network includes: the identifier of the second virtual network according to the identifier of the second virtual network, and the IP address and location of the tunnel termination module of the second virtual network.
  • the identifier of the sub-virtual network of the second virtual network is searched for the sub-virtual network mapping table, and the identifier of the sub-virtual network in the first virtual network is obtained.
  • the data forwarding unit 4033 is further configured to encapsulate data sent to the second virtual network, and send the encapsulated data to the data sending unit.
  • FIG. 6 is a schematic flowchart of a data transmission method in a virtual scalable local area network VXLAN according to an embodiment of the present invention, including:
  • Step 600 Receive data sent to the first sub-virtual network, and decapsulate the data.
  • Step 602 Search for the saved sub-virtual network mapping table according to the identifier of the sub-virtual network of the second virtual network carried in the data, and obtain the first virtual network corresponding to the sub-virtual network of the second virtual network.
  • An identifier of the destination sub-virtual network wherein the first virtual network and the second virtual network implement forwarding of data through a network, and the sub-virtual network mapping table records sub-virtual networks of the second virtual network and Corresponding relationship between the destination sub-virtual networks;
  • Step 604 Send the decapsulated data to the destination sub-virtual network according to the identifier of the destination sub-virtual network in the first virtual network.
  • a sub-virtual network that belongs to a virtual network can be flexibly configured according to the actual needs of the networking, so that sub-virtual networks in different regions can efficiently forward data.
  • the method before receiving data sent to the first sub-virtual network, the method may further include:
  • An identifier of the sub-virtual network in which the service is not allocated in the first virtual network, an identifier of the sub-virtual network in the second virtual network, the second virtual network identifier, and a tunnel in the second virtual network Corresponding relationship between the IPs of the terminating modules is sent to the second virtual network, so that the tunnel terminating module of the second virtual network identifies the sub-virtual network of the unassigned service in the first virtual network, and the a mapping between the identifier of the sub-virtual network in the virtual network, the second virtual network identifier, and the IP of the tunnel termination module in the second virtual network, where the tunnel termination module of the second virtual network is saved.
  • the child virtual network maps in the table.
  • the tunnel termination module of the network can obtain the configured sub-virtual network correspondence.
  • the data can be accurately sent to the corresponding sub-virtual network.
  • the sub-virtual network mapping table includes: an identifier of the first virtual network, an IP address of a tunnel termination module of the second virtual network, and an identifier of a sub-virtual network in the second virtual network.
  • the identifier of the sub-virtual network in the first virtual network may be a correspondence table shown in Table 1.
  • the identifier of the destination sub-virtual network in the virtual network includes: searching according to the identifier of the second virtual network, the IP address of the tunnel termination module of the second virtual network, and the identifier of the sub-virtual network of the second virtual network.
  • the sub-virtual network mapping table acquires an identifier of the sub-virtual network in the first virtual network.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the embodiments of the present invention.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
  • the technical solution of the present invention contributes in essence or to the prior art, or all or part of the technical solution may be embodied in the form of a software product stored in a storage medium.
  • a number of instructions are included to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .

Landscapes

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

Abstract

本发明实施例提供了一种VXLAN中数据传输的设备和方法,以解决不同虚拟网络之间数据转发时VLAN标识必须相同带来的组网不够灵活的问题。本发明实施例虚拟可扩展本地区域网络VXLAN中数据传输的设备和方法,根据接收到的数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识,可以实现在属于一个虚拟网络的子虚拟网络可以根据组网的实际需要灵活配置,使得不同区域的子虚拟网络能够有效地进行数据的转发。

Description

虚拟可扩展本地区域网络中数据传输的设备和方法
本申请要求于2014年12月31日提交中国专利局、申请号为201410856308.6、发明名称为“虚拟可扩展本地区域网络中数据传输的设备和方法”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及信息技术领域,特别涉及一种虚拟可扩展本地区域网络VXLAN中数据传输的设备和方法。
背景技术
虚拟可扩展本地区域网络(VXLAN,Virtual eXtensible Local Area Network)技术旨在解决数据中心网络中不断扩展的对虚拟网络的需求,与当前标准的VLAN技术最多只能提供4K个虚拟网络之间的矛盾。
现有的VXLAN中,不同的虚拟网络中实现通信的两个子虚拟网络vlan,要求其子虚拟网络的网络标识必须相同,才能够进行同一个虚拟局域网中的用户在不同的虚拟网络之间进行数据的交互和通信。
例如一个校园的教学楼有一个虚拟网络A,实验楼有一个虚拟网络B,教学楼和实验楼在物理上存在一定的距离,教学楼中的虚拟网络与实验楼中的虚拟网络之间需要通过网络进行信息的传递和数据的交换。在教学楼的虚拟网络中,包括一个以上的子虚拟网络vlan,实验楼的网络中,也可能包含一个以上的vlan,当教学楼里的一个vlan10,例如是一个教师组的一个群组,需要和实验楼里面的同一个教师群组通信时,要求教学楼vlan10发送的数据通过网络传递到实验楼后被标识为vlan10的子虚拟网络接收,这样才能实现同一群组发送的信息和数据能够在另一个虚拟网络中接收到。
但是在实际应用过程中,实验楼里的vlan10标识可能已经被其它业务,例如学生组占用,这样,从教学楼vlan10发送的数据,通过网络传递到实验楼后,不能被教师组的成员查收,导致同一个vlan中的用户无法在两个以上的虚拟网络中互通的情况出现,组网不够灵活,影响到用户业务的正常转发。
发明内容
本发明实施例提供了一种VXLAN中数据传输的设备和方法,以解决不同虚拟网络之间数据转发时VLAN标识必须相同带来的组网不够灵活的问题。
第一方面,本发明实施例提供了一种虚拟可扩展本地区域网络VXLAN中数据传输的设备,包括中央处理器、内存和隧道终结模块;所述中央处理器分别与所述内存和所述隧道终结模块相连,所述隧道终结模块用于实现第一虚拟网络中第一子虚拟网络的数据转发,所述隧道终结模块包括数据接收单元、子虚拟网络匹配单元和数据转发单元:
所述数据接收单元,用于接收发往所述第一子虚拟网络的数据,并解封装所述数据;
子虚拟网络匹配单元,根据所述数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识,其中,所述第一虚拟网络与所述第二虚拟网络通过网络实现数据的转发,所述子虚拟网络映射表记录所述第二虚拟网络的子虚拟网络与所述目的子虚拟网络之间的对应关系;
数据发送单元,用于根据所述子虚拟网络匹配单元获取到的所述第一虚拟网络中的目的子虚拟网络的标识,将解封装后的所述数据发送给所述目的子虚拟网络。
在第一方面的第一种可能的实现方式中,结合第一方面,所述隧道终结模块还包括配置接收单元和配置处理单元;
所述配置接收单元,用于接收配置命令,所述配置命令设置所述第一虚拟网络中未分配业务的子虚拟网络与所述第二虚拟网络中的子虚拟网络之间的对应关系;
所述配置处理单元,用于根据所述对应关系将所述第一虚拟网络中未分配业务的子虚拟网络的标识,与所述第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的网络间互联协议IP之间的对应关系,保存在所述子虚拟网络映射表。
在第一方面的第二种可能的实现方式中,结合第一方面或第一方面的第一种可能的实现方式,所述隧道终结模块还包括配置发送单元;
所述配置发送单元,用于将保存的所述第一虚拟网络中未分配业务的子虚拟网络的标识,与第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的IP之间的对应关系,发送给所述第二虚拟网络,使得所述第二虚拟网络的隧道终结模块将所述第一虚拟网络中未分配业务的子虚拟网络的标识,与第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的IP之间的对应关系,保存在所述第二虚拟网络的隧道终结模块的子虚拟网络映射表中。
在第一方面的第三种可能的实现方式中,结合第一方面或第一方面的第一种可能的实现方式,所述子虚拟网络映射表包括:所述第一虚拟网络的标识、所述第二虚拟网络的隧道终结模块的IP地址、所述第二虚拟网络中子虚拟网络的标识和所述第一虚拟网络中子虚拟网络的标识。
在第一方面的第四种可能的实现方式中,结合第一方面的第三种可能的实现方式,所述子虚拟网络匹配单元根据所述数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二 虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识包括:
所述子虚拟网络匹配单元根据所述第二虚拟网络的标识、所述第二虚拟网络的隧道终结模块的IP地址和所述第二虚拟网络的子虚拟网络的标识,查找所述子虚拟网络映射表,获取所述第一虚拟网络中子虚拟网络的标识。
在第一方面的第五种可能的实现方式中,结合第一方面的第三种可能的实现方式,所述数据转发单元还用于对发往所述第二虚拟网络的数据进行封装,并将封装后的数据发送给所述数据发送单元。
第二方面,本发明实施例提供了一种虚拟可扩展本地区域网络VXLAN中数据传输方法,包括:
接收发往第一子虚拟网络的数据,并解封装所述数据;
根据所述数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识,其中,所述第一虚拟网络与所述第二虚拟网络通过网络实现数据的转发,所述子虚拟网络映射表记录所述第二虚拟网络的子虚拟网络与所述目的子虚拟网络之间的对应关系;
根据所述第一虚拟网络中的目的子虚拟网络的标识,将解封装后的所述数据发送给所述目的子虚拟网络。
在第二方面的第一种可能的实现方式中,结合第二方面,在接收发往第一子虚拟网络的数据之前,所述方法还包括:
接收配置命令,所述配置命令设置所述第一虚拟网络中未分配业务的子虚拟网络与所述第二虚拟网络中的子虚拟网络之间的对应关系;
根据所述对应关系将所述第一虚拟网络中未分配业务的子虚拟网络的标识,与所述第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的网络间互联协议IP之间的对应 关系,保存在所述子虚拟网络映射表。
在第二方面的第二种可能的实现方式中,结合第二方面或第二方面的第一种可能的实现方式,所述方法还包括:
将保存的所述第一虚拟网络中未分配业务的子虚拟网络的标识,与第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的IP之间的对应关系,发送给所述第二虚拟网络,使得所述第二虚拟网络的隧道终结模块将所述第一虚拟网络中未分配业务的子虚拟网络的标识,与第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的IP之间的对应关系,保存在所述第二虚拟网络的隧道终结模块的子虚拟网络映射表中。
在第二方面的第三种可能的实现方式中,结合第二方面或第二方面的第一种可能的实现方式,所述子虚拟网络映射表包括:所述第一虚拟网络的标识、所述第二虚拟网络的隧道终结模块的IP地址、所述第二虚拟网络中子虚拟网络的标识和所述第一虚拟网络中子虚拟网络的标识。
在第二方面的第四种可能的实现方式中,结合第二方面的第三种可能的实现方式,所述根据所述数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识包括:
根据所述第二虚拟网络的标识、所述第二虚拟网络的隧道终结模块的IP地址和所述第二虚拟网络的子虚拟网络的标识,查找所述子虚拟网络映射表,获取所述第一虚拟网络中子虚拟网络的标识。
在第二方面的第五种可能的实现方式中,结合第二方面的第三种可能的实现方式,所述将所述要发送的数据通过网络发送给所述第二虚拟网络中的子虚拟网络标识对应的子虚拟网络包括:
对所述要发送的数据进行封装,并将封装后的数据发送给第二虚拟网络中的子虚拟网络标识对应的子虚拟网络。
本发明实施例虚拟可扩展本地区域网络VXLAN中数据传输的设备和方法,根据接收到的数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识,可以实现在属于一个虚拟网络的子虚拟网络可以根据组网的实际需要灵活配置,使得不同区域的子虚拟网络能够有效地进行数据的转发。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中VXLAN隧道终结点VTEP的一种实现结构示意图;
图2为本发明实施例中虚拟网络具体应用场景示意图;
图3为本发明实施例中虚拟网络具体应用场景实现本发明的示意图;
图4为本发明实施例提供的一种虚拟可扩展本地区域网络VXLAN中数据传输的设备400的结构示意图;
图5为本发明实施例提供的一种虚拟可扩展本地区域网络VXLAN中数据传输的设备400的另一种实现结构示意图;
图6为本发明实施例提供的一种虚拟可扩展本地区域网络VXLAN中数据传输方法的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进 行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
在虚拟网络中,VXLAN隧道终结点VTEP(VXLAN Terminal End Point)是VXLAN网络中服务器上的功能模块,用于接收入隧道的二层报文,并将二层报文封装成VXLAN报文,在隧道终结点将封装后的VXLAN的报文还原为二层报文,即VTEP负责VXLAN隧道的封装以及解封装,以实现不同虚拟网络之间通过网络的数据转发。
VTEP是一个虚拟网络与其它虚拟网络相互联系传递数据的节点,可以是一个服务器上的一个芯片或一个功能模块,也可以是一个交换设备中的一个芯片或一个功能模块。上述虚拟网络可以是一定区域的虚拟网络,多个虚拟网络通过网络实现相互连接和数据的转发。
如图1所示,以VTEP在服务器上实现为例,在服务器中包括中央处理器CPU101,内存102和隧道终结点VTEP103。VTEP103在中央处理器的控制下实现其功能。本发明实施例中,VETP还可以在其它设备(如交换设备)或独立的设备来实现其功能,不再赘述。
下面以三个虚拟网络通过网络进行数据的转发为例,对本发明实施例一种VXLAN中数据传输的设备和方法进行说明。
如图2所示,三个虚拟网络分别通过各自的VTEP实现不同虚拟网络之间的数据转发。VTEP1管理的标识为4096的虚拟网络中的子虚拟网络包括vlan10、vlan20和vlan30;VTEP2管理的标识为4096的虚拟网络中的子虚拟网络也包括vlan10、vlan20和vlan30;VTEP3管理的标识为4096的虚拟网络中的子虚拟网络包括vlan10、vlan20和vlan30~50。
如图2所示,如果VTEP1管理的虚拟网络标识为4096的虚拟网络中的中的用户需要通过网络与VTEP3管理的虚拟网络标识为4096的虚拟网 络中的同一虚拟网络中的用户通过网络进行数据传输,需要在VTEP3所管理的虚拟网络中建立一个vlan30为标识的子虚拟网络,使得从VTEP1中的vlan30传递过来的数据能够被VTEP3转发到目的虚拟网络中。但是,现有技术中会存在VTEP3所管理的虚拟网络中标识vlan30已经被占用的情况,即vlan30被其它业务对应的子虚拟网络所占用,这样从VTEP1中的vlan30发送到VTEP3时,会被VTEP3转发给标识为vlan30对应的子虚拟网络,而该子虚拟网络并不是VTEP1管理的vlan30要发送的目的子虚拟网络,导致同一个子虚拟网络中的用户无法实现互通,网络组网不够灵活,影响用户数据的转发。
本发明实施例通过更改VTEP3中的配置,将虚拟网络3中未被分配业务的子虚拟网络作为与VTEP1管理的标识为vlan30的子虚拟网络对应的子虚拟网络,并建立对应关系表,在数据转发时,将数据转发给对应的子虚拟网络中。具体如图3所示的步骤:
步骤S1:第一虚拟网络的VTEP接收配置命令,所述配置命令设置第一虚拟网络中的子虚拟网络的标识与第二虚拟网络中的子虚拟网络标识之间的对应关系;
具体的,可以通过用户命令行,或者专用的配置管理工具(如VXLAN Manager),下发所述配置命令。
以用户通过命令行下发配置名利为例,用户通过配置界面输入本地用户的vlan(Local Customer Vlan),远端用户的vlan(Remote Customer Vlan)以及远端用户所在虚拟网络的VTEP的网络间互联协议IP地址(Remote Peer Ip)。例如上述图2中,VTEP3所在虚拟网络为第一虚拟网络,VTEP2所在的虚拟网络为第二虚拟网络,由于VTEP3所管理的标识为4096的虚拟网络中,子虚拟网络vlan30已经被占用,需要通过配置,将未被占用的子虚拟网络(例如vlan4094)配置为与VTEP1所管理的标识为4096的虚拟网络中的子虚拟网络vlan30对应的子虚拟网络。
基于上述实例,上述Local Customer Vlan可以是图2中VTEP3所在的虚拟网络中未分配业务的子虚拟网络vlan,例如vlan4094;Remote Customer Vlan可以是VTEP1所管理的虚拟网络中vlan 30对应的子虚拟网络;Remote Peer Ip可以是VTEP1的IP地址。配置命令可以为如下:
[Server3-VXLAN-VNI4096]customer vlan 4094mapping-to remote ip 10.10.10.1 remote vlan 30,该消息的类型可以为:vxlan-customer-vlan-mapping,该消息类型在该消息中携带,用于标识该消息用于配置子虚拟网络的对应关系的消息。
S2:所述第一虚拟网络的VTEP的解析下发的消息,如果消息类型是vxlan-customer-vlan-mapping,根据所述消息确定第一虚拟网络中的Vlan标识与第二区域中的Vlan标识之间的对应关系,并将该对应关系保存在子虚拟网络映射表中。
具体的,VTEP3可以根据所述vxlan-customer-vlan-mapping消息,调用vxlan-customer-vlan-mapping消息处理函数,从该消息中提取如下参数:
VNIID,Remote Peer Ip,Remote Customer Vlan以及Local Customer Vlan。其中,VNI为VXLAN网络标识符,VNIID为VXLAN网络标识符的ID。
构造以VNIID,Remote Peer Ip,Remote Customer Vlan为Key,Local Customer Vlan为Result的哈希表项,将该表项添加到VTEP3的子虚拟网络映射表中,并将该映射表存于VTEP3所在的设备的内存中。
上述第一虚拟网络中的子虚拟网络标识与第二虚拟网络中的子虚拟网络标识之间的对应关系可以如表1所示:
Figure PCTCN2015093583-appb-000001
表1
其中,VNIID表示虚拟网络的标识,例如图2中虚拟网络的标识4096,Remote Peer Ip表示VTEP的IP地址,例如图2中VTEP1的IP地址为10.10.10.1,VTEP2的IP地址为20.20.20.2;Remote Customer Vlan表示远端的虚拟网络中对应的子虚拟网络标识,例如VTEP1中的vlan30或VTEP2中的vlan30;Local Customer Vlan与本地对应的子虚拟网络标识,例如图2中,VTEP3中未分配业务的子虚拟网络标识vlan4094。
可选的,为保证对应关系的可靠性,本发明实施例提供的方法还可以将子虚拟网络映射表实时备份在基板管理控制器BMC所挂接内存等备份设备中。在服务器下电之后主机内存中的表项恢复由该备份设备中恢复。
S3,所述第一虚拟网络的VTEP将配置信息通过VTEP信令发送至指定的第二虚拟网络的VTEP,信令通道以及消息格式可以如图3所示。
VTEP3(可以是VTEP3中的信令分发单元)在vxlan customer vlan mapping消息的各个字段填入相应的值,例如表1所示的各字段对应的值,并将填充后的vxlan customer vlan mapping发送给VTEP1和VTEP2。例如,给VTEP1发送的vxlan customer vlan mapping消息中,在VNIID字段填入4096,在Remote Peer Ip字段填入10.10.10.1,在Remote Customer Vlan字段填入30,在Local Customer Vlan字段填入4094。给VTEP2发送的vxlan customer vlan mapping消息中,在VNIID字段填入4096,在Remote Peer Ip字段填入20.20.20.2,在Remote Customer Vlan字段填入30,在Local Customer Vlan字段填入4094。
S4:第二虚拟网络的VTEP接收到第一虚拟网络的VTEP的所述消息之后,将所述对应关系保存在第二虚拟网络的VTEP的子虚拟网络映射表中,并将子虚拟网络映射表保存在本地的主机内存中。第二虚拟网络中的子虚拟网络映射表可以如表2所示:
VNIID Remote Peer Ip Remote Local
    Custom Vlan Custom Vlan
4096 30.30.30.3 4094 30
表2
具体的,可以是第二虚拟网络的VTEP的信令接收单元,接收所述第一虚拟网络的VTEP发送的消息。第二虚拟网络的VTEP的信令接收单元收到远端VTEP发送过来的消息后,首先校验消息的合法性,然后解析消息类型,对于VXLAN_CUSTOMER_VLAN_MAPPING消息,调用信令处理部件中的Vlan映射处理函数来做进一步处理。Vlan映射处理函数从消息结构体中逐个字段提取信息,创建以VNIID,Local Ip,Local Customer Vlan为Key,Remote Customer Vlan为Result的哈希表项,将该表项添加到VTEP部件的VLAN映射表中,该映射表同样位于主机内存。
在子虚拟网络映射表中的子虚拟网络对应关系建立后,在实现不同子虚拟网络的数据转发时,可以根据子虚拟网络映射表中记录的子虚拟网络的标识对应的关系,实现数据的转发。
例如图2中,VTEP3接收到VTEP1发送的标识为vlan30的子虚拟网络发送的数据,解封装后,根据解封装后数据的源子虚拟网络标识即VTEP1管理的子虚拟网络标识vlan30,vlan30所在的虚拟网络标识以及VTEP1的IP地址,查找子虚拟网络映射表,获取对应的VTEP3所管理的子虚拟网络的标识,并将该数据发送给获取到的VTEP3所管理的子虚拟网络的标识对应的子虚拟网络。
参考图4,图4为本发明实施例提供的一种虚拟可扩展本地区域网络VXLAN中数据传输的设备400的结构示意图,包括中央处理器401、内存402和隧道终结模块403;所述中央处理器401分别与所述内存402和所述隧道终结模块403相连,所述隧道终结模块403用于实现第一虚拟网络中第一子虚拟网络的数据转发,其特征在于,所述隧道终结模块包括数据接收单元 4031、子虚拟网络匹配单元4032和数据转发单元4033:
所述数据接收单元4031,用于接收发往所述第一子虚拟网络的数据,并解封装所述数据;
子虚拟网络匹配单元4032,根据所述数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识,其中,所述第一虚拟网络与所述第二虚拟网络通过网络实现数据的转发,所述子虚拟网络映射表记录所述第二虚拟网络的子虚拟网络与所述目的子虚拟网络之间的对应关系;
数据发送单元4033,用于根据所述子虚拟网络匹配单元获取到的所述第一虚拟网络中的目的子虚拟网络的标识,将解封装后的所述数据发送给所述目的子虚拟网络。
上述虚拟可扩展本地区域网络VXLAN中数据传输的设备400,通过子虚拟网络匹配单元4032根据所述数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识,可以实现在属于一个虚拟网络的子虚拟网络可以根据组网的实际需要灵活配置,使得不同区域的子虚拟网络能够有效地进行数据的转发。
在具体实现时,如图5所示,本发明实施例提供的虚拟可扩展本地区域网络VXLAN中数据传输的设备400中,所述隧道终结模块403还包括配置接收单元4034和配置处理单元4035;
所述配置接收单元4034,用于根据所述对应关系将所述第一虚拟网络中未分配业务的子虚拟网络的标识,与所述第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的IP之间的对应关系,保存在所述子虚拟网络映射表;
所述配置处理单元4035,用于根据所述对应关系将所述第一虚拟网络 中未分配业务的子虚拟网络的标识与所述第二虚拟网络中的子虚拟网络的标识之间的对应关系,保存在所述子虚拟网络映射表。
可选的,所述隧道终结模块403还包括配置发送单元4036;
所述配置发送单元4036,用于将保存的所述第一虚拟网络中未分配业务的子虚拟网络的标识,与第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的IP之间的对应关系,发送给所述第二虚拟网络,使得所述第二虚拟网络的隧道终结模块将所述第一虚拟网络中未分配业务的子虚拟网络的标识,与第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的IP之间的对应关系,保存在所述第二虚拟网络的隧道终结模块的子虚拟网络映射表中。
通过配置发送单元4036,可以使得其它虚拟网络的隧道终结模块能够获取已经配置的子虚拟网络对应关系,在实现数据转发时,能够将数据准确地发送给相应的子虚拟网络。
在具体实现中,本发明实施例所述子虚拟网络映射表可以包括:所述第一虚拟网络的标识、所述第二虚拟网络的隧道终结模块的IP地址、所述第二虚拟网络中子虚拟网络的标识和所述第一虚拟网络中子虚拟网络的标识,例如上述表1所示的对应关系表。相应的,所述子虚拟网络匹配单元4032根据所述数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识包括:所述子虚拟网络匹配单元根据所述第二虚拟网络的标识、所述第二虚拟网络的隧道终结模块的IP地址和所述第二虚拟网络的子虚拟网络的标识,查找所述子虚拟网络映射表,获取所述第一虚拟网络中子虚拟网络的标识。
可选的,所述数据转发单元4033还用于对发往所述第二虚拟网络的数据进行封装,并将封装后的数据发送给所述数据发送单元。
参考图6,图6为本发明实施例一种虚拟可扩展本地区域网络VXLAN中数据传输方法的流程示意图,包括:
步骤600:接收发往第一子虚拟网络的数据,并解封装所述数据;
步骤602:根据所述数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识,其中,所述第一虚拟网络与所述第二虚拟网络通过网络实现数据的转发,所述子虚拟网络映射表记录所述第二虚拟网络的子虚拟网络与所述目的子虚拟网络之间的对应关系;
步骤604:根据所述第一虚拟网络中的目的子虚拟网络的标识,将解封装后的所述数据发送给所述目的子虚拟网络。
上述虚拟可扩展本地区域网络VXLAN中数据传输的方法,根据接收到的数据中携带的第二虚拟网络的子虚拟网络的标识、第二虚拟网络的虚拟网络标识以及发送所述数据的第二虚拟网络的隧道终结模块的IP地址,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识,可以实现在属于一个虚拟网络的子虚拟网络可以根据组网的实际需要灵活配置,使得不同区域的子虚拟网络能够有效地进行数据的转发。
在具体实现是,在接收发往第一子虚拟网络的数据之前,所述方法还可以包括:
接收配置命令,所述配置命令设置所述第一虚拟网络中未分配业务的子虚拟网络与所述第二虚拟网络中的子虚拟网络之间的对应关系;
根据所述对应关系将所述第一虚拟网络中未分配业务的子虚拟网络的标识,与所述第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的IP之间的对应关系,保存在所述子虚拟网络映射表。
作为一种可选的实现方式,所述方法还可以包括:
将保存的所述第一虚拟网络中未分配业务的子虚拟网络的标识,与第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的IP之间的对应关系,发送给所述第二虚拟网络,使得所述第二虚拟网络的隧道终结模块将所述第一虚拟网络中未分配业务的子虚拟网络的标识,与第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的IP之间的对应关系,保存在所述第二虚拟网络的隧道终结模块的子虚拟网络映射表中。
通过将保存的所述第一虚拟网络中未分配业务的子虚拟网络的标识与第二虚拟网络中的子虚拟网络的标识之间的对应关系发送给所述第二虚拟网络,可以使得其它虚拟网络的隧道终结模块能够获取已经配置的子虚拟网络对应关系,在实现数据转发时,能够将数据准确地发送给相应的子虚拟网络。
本发明实施例中,所述子虚拟网络映射表包括:所述第一虚拟网络的标识、所述第二虚拟网络的隧道终结模块的IP地址、所述第二虚拟网络中子虚拟网络的标识和所述第一虚拟网络中子虚拟网络的标识,例如可以是表1所示的对应关系表。相应的,所述根据所述数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识包括:根据所述第二虚拟网络的标识、所述第二虚拟网络的隧道终结模块的IP地址和所述第二虚拟网络的子虚拟网络的标识,查找所述子虚拟网络映射表,获取所述第一虚拟网络中子虚拟网络的标识。
作为一种可选的实现方式,本发明实施例中,所述将所述要发送的数据通过网络发送给所述第二虚拟网络中的子虚拟网络标识对应的子虚拟网络包括:
对所述要发送的数据进行封装,并将封装后的数据发送给第二虚拟网 络中的子虚拟网络标识对应的子虚拟网络。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (12)

  1. 一种虚拟可扩展本地区域网络VXLAN中数据传输的设备,包括中央处理器、内存和隧道终结模块;所述中央处理器分别与所述内存和所述隧道终结模块相连,所述隧道终结模块用于实现第一虚拟网络中第一子虚拟网络的数据转发,其特征在于,所述隧道终结模块包括数据接收单元、子虚拟网络匹配单元和数据转发单元:
    所述数据接收单元,用于接收发往所述第一子虚拟网络的数据,并解封装所述数据;
    子虚拟网络匹配单元,根据所述数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识,其中,所述第一虚拟网络与所述第二虚拟网络通过网络实现数据的转发,所述子虚拟网络映射表记录所述第二虚拟网络的子虚拟网络与所述目的子虚拟网络之间的对应关系;
    数据发送单元,用于根据所述子虚拟网络匹配单元获取到的所述第一虚拟网络中的目的子虚拟网络的标识,将解封装后的所述数据发送给所述目的子虚拟网络。
  2. 根据权利要求1所述的设备,其特征在于,所述隧道终结模块还包括配置接收单元和配置处理单元;
    所述配置接收单元,用于接收配置命令,所述配置命令设置所述第一虚拟网络中未分配业务的子虚拟网络与所述第二虚拟网络中的子虚拟网络之间的对应关系;
    所述配置处理单元,用于根据所述对应关系将所述第一虚拟网络中未分配业务的子虚拟网络的标识,与所述第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的网络 间互联协议IP之间的对应关系,保存在所述子虚拟网络映射表。
  3. 根据权利要求1或2所述的设备,其特征在于,所述隧道终结模块还包括配置发送单元;
    所述配置发送单元,用于将保存的所述第一虚拟网络中未分配业务的子虚拟网络的标识,与第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的IP之间的对应关系,发送给所述第二虚拟网络,使得所述第二虚拟网络的隧道终结模块将所述第一虚拟网络中未分配业务的子虚拟网络的标识,与第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的IP之间的对应关系,保存在所述第二虚拟网络的隧道终结模块的子虚拟网络映射表中。
  4. 根据权利要求1或2所述的设备,其特征在于,
    所述子虚拟网络映射表包括:所述第二虚拟网络的标识、所述第二虚拟网络的隧道终结模块的IP地址和所述第二虚拟网络中子虚拟网络的标识,与所述第一虚拟网络中子虚拟网络的标识之间的对应关系。
  5. 根据权利要求4所述的设备,其特征在于,所述子虚拟网络匹配单元根据所述数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识包括:
    所述子虚拟网络匹配单元根据所述第二虚拟网络的标识、所述第二虚拟网络的隧道终结模块的IP地址和所述第二虚拟网络的子虚拟网络的标识,查找所述子虚拟网络映射表,获取所述第一虚拟网络中子虚拟网络的标识。
  6. 根据权利要求4所述的设备,其特征在于,
    所述数据转发单元还用于对发往所述第二虚拟网络的数据进行封装,并将封装后的数据发送给所述数据发送单元。
  7. 一种虚拟可扩展本地区域网络VXLAN中数据传输方法,其特征在于:
    接收发往第一子虚拟网络的数据,并解封装所述数据;
    根据所述数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识,其中,所述第一虚拟网络与所述第二虚拟网络通过网络实现数据的转发,所述子虚拟网络映射表记录所述第二虚拟网络的子虚拟网络与所述目的子虚拟网络之间的对应关系;
    根据所述第一虚拟网络中的目的子虚拟网络的标识,将解封装后的所述数据发送给所述目的子虚拟网络。
  8. 根据权利要求7所述的方法,其特征在于,在接收发往第一子虚拟网络的数据之前,所述方法还包括:
    接收配置命令,所述配置命令设置所述第一虚拟网络中未分配业务的子虚拟网络与所述第二虚拟网络中的子虚拟网络之间的对应关系;
    根据所述对应关系将所述第一虚拟网络中未分配业务的子虚拟网络的标识,与所述第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的网络间互联协议IP之间的对应关系,保存在所述子虚拟网络映射表。
  9. 根据权利要求7或8所述的方法,其特征在于,所述方法还包括:
    将保存的所述第一虚拟网络中未分配业务的子虚拟网络的标识,与第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的IP之间的对应关系,发送给所述第二虚拟网络,使得所述第二虚拟网络的隧道终结模块将所述第一虚拟网络中未分配业务的子虚拟网络的标识,与第二虚拟网络中的子虚拟网络的标识、所述第二虚拟网络标识和所述第二虚拟网络中的隧道终结模块的IP之间的对应关系,保存在所述第二虚拟网络的隧道终结模块的子虚拟网络映射表中。
  10. 根据权利要求7或8所述的方法,其特征在于,所述方法还包括:
    所述子虚拟网络映射表包括:所述第一虚拟网络的标识、所述第二虚拟网络的隧道终结模块的IP地址、所述第二虚拟网络中子虚拟网络的标识和所述第一虚拟网络中子虚拟网络的标识。
  11. 根据权利要求10所述的方法,其特征在于,所述根据所述数据中携带的第二虚拟网络的子虚拟网络的标识,查找保存的子虚拟网络映射表,获取与所述第二虚拟网络的子虚拟网络对应的所述第一虚拟网络中的目的子虚拟网络的标识包括:
    根据所述第二虚拟网络的标识、所述第二虚拟网络的隧道终结模块的IP地址和所述第二虚拟网络的子虚拟网络的标识,查找所述子虚拟网络映射表,获取所述第一虚拟网络中子虚拟网络的标识。
  12. 根据权利要求10所述的方法,其特征在于,所述将所述要发送的数据通过网络发送给所述第二虚拟网络中的子虚拟网络标识对应的子虚拟网络包括:
    对所述要发送的数据进行封装,并将封装后的数据发送给第二虚拟网络中的子虚拟网络标识对应的子虚拟网络。
PCT/CN2015/093583 2014-12-31 2015-11-02 虚拟可扩展本地区域网络中数据传输的设备和方法 WO2016107269A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410856308.6A CN105812221B (zh) 2014-12-31 2014-12-31 虚拟可扩展本地区域网络中数据传输的设备和方法
CN201410856308.6 2014-12-31

Publications (1)

Publication Number Publication Date
WO2016107269A1 true WO2016107269A1 (zh) 2016-07-07

Family

ID=56284164

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/093583 WO2016107269A1 (zh) 2014-12-31 2015-11-02 虚拟可扩展本地区域网络中数据传输的设备和方法

Country Status (2)

Country Link
CN (1) CN105812221B (zh)
WO (1) WO2016107269A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116156027A (zh) * 2023-04-20 2023-05-23 中国人民解放军国防科技大学 一种支持rmt的动作执行引擎及其执行方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107786410B (zh) * 2016-12-29 2020-08-28 平安科技(深圳)有限公司 一种基于以太网封装的vxlan实现方法及终端
CN109673046B (zh) * 2017-10-16 2021-02-09 华为技术有限公司 移动性管理的方法、终端及核心网设备
CN107995084B (zh) * 2017-11-09 2020-12-01 新华三技术有限公司 隧道选择方法及装置
CN109768908B (zh) 2017-11-09 2020-10-09 华为技术有限公司 一种vxlan的配置方法、设备及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102970227A (zh) * 2012-11-12 2013-03-13 盛科网络(苏州)有限公司 在asic中实现vxlan报文转发的方法和装置
CN103095546A (zh) * 2013-01-28 2013-05-08 华为技术有限公司 一种处理报文的方法、装置及数据中心网络
US20140208317A1 (en) * 2013-01-23 2014-07-24 Fujitsu Limited Multi-tenant system and control method of multi-tenant system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101286918A (zh) * 2007-04-09 2008-10-15 中国移动通信集团公司 虚拟专用网络系统及其数据处理方法
CN104518935B (zh) * 2013-09-27 2018-05-25 华为技术有限公司 实现虚拟网络通信的方法、装置和系统
CN103957160B (zh) * 2014-05-12 2017-04-19 华为技术有限公司 一种发送报文的方法及设备
CN104104747B (zh) * 2014-07-28 2017-08-08 新华三技术有限公司 报文传输方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102970227A (zh) * 2012-11-12 2013-03-13 盛科网络(苏州)有限公司 在asic中实现vxlan报文转发的方法和装置
US20140208317A1 (en) * 2013-01-23 2014-07-24 Fujitsu Limited Multi-tenant system and control method of multi-tenant system
CN103095546A (zh) * 2013-01-28 2013-05-08 华为技术有限公司 一种处理报文的方法、装置及数据中心网络

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116156027A (zh) * 2023-04-20 2023-05-23 中国人民解放军国防科技大学 一种支持rmt的动作执行引擎及其执行方法
CN116156027B (zh) * 2023-04-20 2023-07-18 中国人民解放军国防科技大学 一种支持rmt的动作执行引擎及其执行方法

Also Published As

Publication number Publication date
CN105812221A (zh) 2016-07-27
CN105812221B (zh) 2019-07-12

Similar Documents

Publication Publication Date Title
CN107070691B (zh) Docker容器的跨主机通信方法和系统
US10205657B2 (en) Packet forwarding in data center network
WO2016107269A1 (zh) 虚拟可扩展本地区域网络中数据传输的设备和方法
US9832136B1 (en) Streaming software to multiple virtual machines in different subnets
US8549286B2 (en) Method and system for forwarding data between private networks
CN102447752B (zh) 基于二层隧道协议的业务访问方法、系统和装置
CN103404084B (zh) Mac地址强制转发装置及方法
WO2017054576A1 (zh) 单播隧道建立方法、装置和系统
US11757832B2 (en) IP address allocation system and method
WO2020253631A1 (zh) Ip地址的配置方法、设备及系统
WO2016180020A1 (zh) 一种报文处理方法、设备和系统
US20120243521A1 (en) Gateway device
WO2019214612A1 (zh) 传输报文的方法和装置
CN105187311A (zh) 一种报文转发方法及装置
CN108259298A (zh) 一种报文转发方法及装置
CN107547338A (zh) 一种报文转发方法及装置
CN103685007B (zh) 一种边缘设备报文转发时的mac学习方法及边缘设备
CN109818869B (zh) 组播流量转发端口的生成方法及相关设备
US11817970B2 (en) Method, device, and system for determining generic routing encapsulation GRE tunnel identifier
CN109246016A (zh) 跨vxlan的报文处理方法和装置
CN103269300A (zh) 一种实现异构网络互联的方法和设备
CN105610672B (zh) 一种信息传输的方法及装置
CN104601463A (zh) 一种vxlan网络中报文转发方法及装置
WO2019134637A1 (zh) 多类型的层叠虚拟网络互连的方法、装置及系统
WO2016015496A1 (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: 15874954

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

Country of ref document: EP

Kind code of ref document: A1