WO2017008690A1 - Vxlan中的丢包定位 - Google Patents

Vxlan中的丢包定位 Download PDF

Info

Publication number
WO2017008690A1
WO2017008690A1 PCT/CN2016/089345 CN2016089345W WO2017008690A1 WO 2017008690 A1 WO2017008690 A1 WO 2017008690A1 CN 2016089345 W CN2016089345 W CN 2016089345W WO 2017008690 A1 WO2017008690 A1 WO 2017008690A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
analog
vtep
service
vxlan
Prior art date
Application number
PCT/CN2016/089345
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 杭州华三通信技术有限公司
Priority to US15/743,192 priority Critical patent/US10484259B2/en
Priority to EP16823837.6A priority patent/EP3306877B1/en
Priority to JP2018520012A priority patent/JP6514415B2/ja
Publication of WO2017008690A1 publication Critical patent/WO2017008690A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/825Involving tunnels, e.g. MPLS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • 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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/583Stackable routers
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]

Definitions

  • VXLAN Virtual eXtensible Local Area Network
  • UDP User Datagram Protocol
  • the outer layer of the payload uses UDP as the transmission means, this ensures that the payload is smoothly transmitted in the Layer 2 and Layer 3 networks, thereby realizing the Layer 2 network covering the Layer 3 network.
  • the covered virtual network is referred to as an overlay network
  • the covered physical bearer network is referred to as an underlay network.
  • FIG. 1 is a flowchart of a packet loss positioning method applied to a VXLAN according to an embodiment of the present invention
  • FIG. 2 is a network diagram of application of a packet loss positioning method according to an embodiment of the present invention.
  • FIG. 3 is a network diagram of application of a packet loss positioning method according to an embodiment of the present disclosure
  • FIG. 4 is a schematic structural diagram of a packet loss locating device applied to a VXLAN according to an embodiment of the present invention
  • FIG. 5 is a schematic structural diagram of hardware of a packet loss locating device applied to a VXLAN according to an embodiment of the present invention.
  • FIG. 1 is a flowchart of a method for locating a packet loss in a VXLAN according to an embodiment of the present invention. As shown in FIG. 1, the method may include the following steps:
  • Step 201 When the service packet sent by the first virtual machine (VM: Virtual Machine) that is locally accessed does not reach the second VM that accesses the second VTEP, the first virtual local area network tunnel end point (VTEP: VXLAN Tunnel End Point) Determining an analog message for simulating a service forwarding path from the first VM to the second VM; the analog message is the same as a message characteristic parameter of the service packet.
  • VM Virtual Machine
  • VTEP VXLAN Tunnel End Point
  • the first VTEP, the second VTEP, the first VM, and the second VM are named for convenience of description.
  • the packet feature parameter of the simulated message is the same as the packet feature parameter of the service message sent by the first VM that does not reach the second VM.
  • the packet feature parameter may be a message quintuple or a message quintuple.
  • the packet quintuple includes the following parameters: destination IP address, source IP address, destination port number, source port number, and protocol type.
  • the packet quintuple includes the following parameters: destination IP address, source IP address, and destination MAC address. Source MAC address, destination port number, source port number, and protocol type.
  • the service message sent by the first VM that does not reach the second VM carries a payload, and the analog message does not carry a payload.
  • Step 202 The first VTEP calculates the packet characteristic parameters of the analog packet according to the local chip forwarding logic to determine the outer UDP source port number, and uses the outer UDP source port number and the local presence and simulation determined by the analog packet.
  • the VXLAN tunnel identifier in the register entry of the packet matches the analog packet by VXLAN encapsulation and forwards the VXLAN encapsulated analog packet through the VXLAN tunnel to identify the received packet.
  • the intermediate device of the analog packet encapsulated by the VXLAN sends a packet loss location parameter to the packet loss locating device for the packet loss location device to locate the packet loss location of the service packet.
  • the UDP source port number of the outer UDP header in the VXLAN encapsulation is calculated by the first VTEP according to the local chip forwarding logic, such as the packet destination parameter (such as the destination IP address of the packet).
  • the chip forwarding logic is set by the chip manufacturer and is generally not disclosed. Based on this, in the embodiment of the present invention, in order to simulate the service forwarding path from the first VM to the second VM, the first VTEP is required to process the analog packet according to the same processing manner as the service packet, as described in step 202. That is, the forwarding process is performed on the analog packet according to the same forwarding logic as the above service packet.
  • the first VTEP performs the packet feature of the analog packet according to the local chip forwarding logic.
  • the UDP source port number of the outer UDP header obtained by the parameter calculation should be exactly the same as the UDP source port number of the outer UDP header calculated for the service packet.
  • the VXLAN tunnel identifier in the register entry matching the analog packet in step 202 is the VXLAN tunnel identifier corresponding to the VXLAN tunnel used by the first VTEP when transmitting the service packet, which can guarantee the simulation report.
  • the packet and the service packet are forwarded through the same VXLAN tunnel to ensure that the service forwarding path of the service packet is simulated.
  • the register entry matching the analog packet may include an ACL (Access Control List) entry, and the matching item in the ACL entry is a packet characteristic parameter of the analog packet, and the simulation report. The logo of the text.
  • the identifier of the analog message here is different from the location of the packet feature parameter in the location of the analog message.
  • the processing action in the ACL entry is to assign the above VXLAN tunnel identifier to the analog packet.
  • VXLAN there is usually a controller that manages VTEP.
  • the above packet loss locating device may be a controller for managing VTEP in the VXLAN.
  • the packet loss locating device when the packet loss locating device is a controller, in step 201 above Determining, by the first VTEP, an analog message for the service forwarding path of the service message to be forwarded from the first VM to the second VM, the first VTEP receiving controller sends the analog service message from the first VM to the first The analog packet of the service forwarding path of the second VM.
  • the packet loss locating device is a controller
  • the register entry matching the analog message locally existing in the foregoing step 202 is generated and sent by the controller when determining that the service packet sent by the first VM does not reach the second VM. Give the first VTEP.
  • the first VTEP when the controller is a packet loss locating device, the first VTEP may be a single device or a stacked device that is aggregated across devices.
  • the controller when the first VTEP is a single device, because the controller has the global topology information of the network, it can determine that the service packet is sent from the first VTEP, so the analog message can be sent to the first VTEP.
  • the register entry that matches the analog message.
  • the controller cannot know which of the stacked devices is received by the service device. Service packets enter different member devices, and the service forwarding path may be different. Therefore, the controller needs to interact with the stack device.
  • the stack device is composed of several member devices and obtains the device ID of each member device, such as the slot number. Based on this, the analog message sent by the first VTEP receiving controller for the service forwarding path of the analog service packet to be forwarded from the first VM to the second VM may be implemented in any of the following two manners:
  • the controller sends an analog packet for simulating a service forwarding path of the service packet from the first VM to the second VM to each member device in the first VTEP.
  • the analog packet sent by the controller to each member device carries the device identifier of the member device in addition to the packet feature parameter.
  • the first VTEP is composed of the member devices 1 to 3.
  • the analog message sent by the controller to the member device 1 carries the device identifier of the member device 1 in addition to the packet feature parameter, and the controller sends the device packet to the member device 2.
  • the analog message carries the device identifier of the member device 2 in addition to the above-mentioned packet feature parameters.
  • the analog message sent by the controller to the member device 3 carries the device identifier of the member device 3 in addition to the above-mentioned packet feature parameters.
  • the device identifier is different in the location of the analog packet and the packet characteristic parameter of the analog packet in the analog packet, so as to prevent the device identifier from interfering with the first VTEP using the packet feature parameter to calculate the UDP source port number.
  • the simulated message sent by the first VTEP receiving controller for the service forwarding path of the analog service packet to be forwarded from the first VM to the second VM may include:
  • Each member device in the first VTEP receives an analog packet sent by the controller for simulating a service packet forwarded from the first VM to the second VM and carrying the device identifier of the device.
  • the process shown in FIG. 1 is performed when each member device in the first VTEP receives an analog packet that is used to forward a service packet from the first VM to the second VM and carries the device identifier of the device. Step 202. In this mode, the controller sends the same register entry that matches the analog packet to each member device in the first VTEP.
  • the second mode is applied to the scenario where the member device learns the source MAC address of the local member port in the stack device.
  • the controller sends a setting packet to each member device in the first VTEP, where the setting packet carries a simulation for simulating the service forwarding path of the service packet from the first VM to the second VM.
  • the source MAC address of the packet is set to be the MAC address of the first VM, and the analog packet carried in the packet is not required to carry the device identifier of the member device, and only the packet feature parameter is carried.
  • the first VTEP is composed of the member devices 1 to 3.
  • the controller sends the same setting packet to the member device 1, the member device 2, and the member device 3.
  • the source MAC address of the setting packet is For the MAC address of the first VM, the analog packet carried in the packet is configured to carry the packet feature parameter.
  • the first VTEP receiving controller sends the analog service
  • the simulated message that the packet is forwarded from the first VM to the service forwarding path of the second VM may include:
  • Each member device in the first VTEP receives a setting message sent by the controller that carries an analog message for simulating a service forwarding message from the first VM to the second VM.
  • the analog packet does not need to carry the device identifier of the member device, and only the member device that matches the source MAC address of the packet performs the process shown in FIG.
  • the packet loss locating device may be the first VTEP regardless of whether the controller is present in the VXLAN.
  • the simulated packet for determining the service forwarding path for the analog service packet to be forwarded from the first VM to the second VM in the foregoing step 201 includes: generating An analog message for simulating a service forwarding message forwarded by the service message from the first VM to the second VM.
  • the register entry matching the analog message locally in the foregoing step 202 is that the first VTEP determines the service packet sent by the first VM. Generated when the second VM is not reached.
  • the designated reserved field in the VXLAN header of the VXLAN encapsulated analog packet sent by the first VTEP is a set value, such as 100.
  • the reserved field is designated as the first reserved field within the VXLAN header.
  • the device on the service forwarding path from the first VM to the second VVM receives the VXLAN encapsulated analog message.
  • the device that receives the analog packet encapsulated by the VXLAN can use the VXLAN encapsulation of the analog packet to match the locally saved matching rule. If the matching succeeds, the packet is sent to the packet loss location device.
  • the packet locating device locates the packet loss positioning parameter of the packet loss location of the service packet.
  • the matching rule here may be sent by the packet loss locating device or may be pre-configured. The following two embodiments take the example of sending a matching rule by a packet loss locating device.
  • the matching rule herein may specifically be: the UDP destination port number in the outer UDP header in the VXLAN encapsulation is the set port number specified by the VXLAN protocol, and the specified reserved field in the VXLAN header The value is a set value, such as 100. In an embodiment of the invention, the reserved field is designated as the first reserved field within the VXLAN header.
  • the packet loss positioning parameter sent by the device that receives the VXLAN encapsulated analog packet may include: the device identifier of the device that receives the VXLAN encapsulated analog packet.
  • the packet loss positioning parameter in order to locate the service forwarding path through which the service packet is sent, may further include the identifier of the port that receives the analog packet encapsulated by the VXLAN.
  • the device that receives the analog message encapsulated by the VXLAN is not the second VTEP that is accessed by the second VM. Because the analog packet encapsulated by the VXLAN is sent when the service packet is lost, it generally does not successfully reach the second VTEP accessed by the second VM. Based on this, the device that receives the analog packet encapsulated by the VXLAN, in addition to sending the packet loss location parameter to the packet loss locating device, continues to determine the forwarding path according to the destination IP address of the outer IP header in the VXLAN encapsulation and forwards the received VXLAN encapsulation. Analog message.
  • the VXLAN encapsulation of the forwarding path is determined by performing a hash operation based on the UDP source port number in the VXLAN encapsulation. Analog message.
  • the analog message encapsulated by the VXLAN may successfully reach the second VTEP accessed by the second VM.
  • the second VTEP when the second VTEP receives the analog packet encapsulated by the VXLAN, it sends a packet loss positioning parameter to the packet loss locating device, but no longer Continue to forward the analog message, but Discard the received analog packets of the VXLAN package.
  • the following describes the processing of the analog message received by the second VTEP in the VXLAN encapsulation, for example, the case of the second VTEP packet loss, or the following processing situation: when the first VM accesses the second VM, N (N is greater than 1) are simultaneously transmitted. The service message is sent to the second VM. As a result, the M (M is less than N) service packets successfully reach the second VM, that is, the NM service packets do not reach the second VM. If the first VTEP determines N analog messages according to the process shown in FIG. 1 and VXLAN encapsulates and forwards the N analog messages according to the local chip forwarding logic, then M analog messages arrive at the second VTEP. The second VTEP discards the received analog packets of the VXLAN package.
  • the device that receives the analog packet encapsulated in the VXLAN sends the packet loss positioning parameter to the packet loss locating device, regardless of whether the packet loss locating device is the controller or the first VTEP. After receiving the packet loss location parameter, the packet loss location device locates the packet loss device between the first VM and the second VM based on the received packet loss location parameter.
  • the packet loss device located between the first VM and the second VM may be specifically implemented in the following two manners based on the received packet loss location parameter:
  • the packet loss location device locates the packet loss device between the first VM and the second VM based on the received packet loss location parameter when the set packet loss location time arrives.
  • the device for locating the packet between the first VM and the second VM based on the received packet loss location parameter includes:
  • the set packet loss positioning time can be set according to the actual situation, but it is generally far greater than the time when the analog packet is forwarded between two different devices.
  • the packet loss location device does not locate the packet loss between the first VM and the second VM based on the received packet loss location parameter when the set packet loss location time arrives.
  • the device performs the positioning process as the analog message is forwarded.
  • the device for locating the packet between the first VM and the second VM based on the received packet loss location parameter includes:
  • the packet loss location parameter is used as the current packet loss location parameter, and the time when the current packet loss location parameter is received is determined, and if the packet is received within the set time after the determined time, If the packet location parameter is returned, the packet loss location parameter is returned as the current packet loss location parameter, and if the packet loss location parameter is not received within the set time after the determined time, the device in the current packet loss location parameter is determined.
  • the device corresponding to the identifier is a packet loss device.
  • the set time is greater than the time that the analog message is forwarded between two different devices.
  • the packet loss device is finally determined from the first VTEP accessed by the first VM to the second VTEP accessed by the second VM.
  • the following describes the packet loss positioning method used in VXLAN by two embodiments.
  • FIG. 2 is a network diagram of application of a packet loss positioning method according to an embodiment of the present invention.
  • Overlay network 10 shows two VTEPs: VTEP1 and VTEP2, where VM1 is connected to VTEP1, VM2 is connected to VTEP2, and VM1, VM2 are virtual machines on two different servers.
  • the controller controls VTEP1 and VTEP2.
  • the underlay network 20 shows six devices, device 31 to device 36, respectively.
  • the packet loss location device is a controller.
  • the service message (recorded as message 0) sent by VM1 has not been successfully arrived.
  • VM2 is asked, and VTEP1 is a single device.
  • the controller constructs an analog message (denoted as message 1) with the same message characteristic parameter as the message characteristic parameter of message 0, and sends message 1 to VTEP1.
  • message 1 denotes an analog message
  • message feature parameters are as described above.
  • the controller also generates a register entry that matches message 1 and sends the register entry to VTEP1.
  • the register entry may include the packet characteristic parameters of the packet 1, such as the source IP address and the destination IP address, the packet 1 as the identifier of the analog packet, and the VXLAN tunnel identifier of the forwarding packet 0.
  • the VXLAN tunnel identifier of the forwarding packet 0 is the VXLAN tunnel 100.
  • the controller sends a matching rule to the device between VTEP1 and VTEP2 (ie, device 31 to device 36) and VTEP2.
  • Figure 2 does not show the controller sending a matching rule to the line from device 31 to device 35 in Figure 2.
  • the matching rule may be: the first reserved field in the VXLAN header in the VXLAN encapsulation is a set value, and the UDP destination port number in the outer UDP header in the VXLAN encapsulation is the set VXLAN port number.
  • the VTEP1 receives the packet 1 sent by the controller, and calculates the packet characteristic parameter of the packet 1 according to the local chip forwarding logic to determine the UDP source port number, and uses the UDP source port number determined by the packet 1 and the sent by the controller.
  • the VXLAN tunnel 100 in the register entry matching the message 1 performs VXLAN encapsulation on the packet 1 and forwards the packet 1 of the VXLAN encapsulation through the VXLAN tunnel corresponding to the VXLAN tunnel 100.
  • the VXLAN package of the message 1 has the following difference compared to the VXLAN package of the message 0: the value in the first reserved field in the VXLAN header of the message 1 is the set value.
  • the UDP source port number in the outer UDP header of the VXLAN encapsulation of the packet 1 is the UDP source port number determined by the packet 1.
  • the UDP destination port number is the set port number specified by the VXLAN protocol, and the outer layer destination of the outer IP header.
  • the IP address is the IP address of VTEP2 and the outer source IP address is the IP address of VTEP1.
  • the packet 1 encapsulated in the VXLAN is referred to as the packet 2.
  • the device 31 receives the packet 2 and finds that the value in the first reserved field in the VXLAN header of the VXLAN encapsulation of the packet 2 is a set value, and the destination UDP port number in the outer UDP header in the VXLAN encapsulation is defined by the VXLAN protocol. If the port number is set to meet the matching rule sent by the controller, the packet loss positioning parameter is sent to the controller.
  • the packet loss location parameter here includes: the device identifier of the device 31.
  • the device 31 determines the path to the destination IP address of the outer layer according to the outer destination IP address of the outer IP header in the VXLAN encapsulation of the packet 2, and finds that the path includes two equal-cost paths, which are: device 31->device 32->Device 33->Device 34->Device 35->VTEP2; Device 31->Device 36->Device 33->Device 34->Device 35->VTEP2. Based on this, the device 31 hashes the UDP source port number of the outer UDP header in the VXLAN encapsulation of the packet 2, and selects the device 31->device 32->device 33->device 34->device 35- according to the hash result. > VTEP2 This path continues to forward received packets 2.
  • the processing after the device 32 to the device 35 receives the message 2 is similar to the processing of the device 31.
  • VTEP2 After receiving the packet 2, VTEP2 finds that the value in the first reserved field in the VXLAN header of the VXLAN encapsulation of the packet 2 is the set value, and the UDP destination port number in the outer UDP header in the VXLAN encapsulation is defined by the VXLAN protocol. If the port number is set to meet the matching rule sent by the controller, the packet loss location parameter is sent to the controller, and the outer IP address of the outer IP header in the VXLAN encapsulation is the IP address of the VTEP2, and the received packet is discarded. Text 2.
  • the controller summarizes and collects all the lost packet location parameters to locate the packet loss device.
  • the method of a above is used to describe how the controller locates the packet loss device.
  • the packet loss positioning parameters received by the controller are:
  • the controller determines, according to the foregoing manner a, the last received packet loss positioning parameter, that is, the device 34, from all the lost packet positioning parameters that are received when the set packet loss positioning time arrives.
  • the last received packet loss location parameter, that is, the device 34 is determined to be a packet loss device, that is, the packet 0 is located at the device 34.
  • the controller collects and drops the lost packet location parameters of the received packet to locate the packet loss device of the packet 0.
  • FIG. 3 is a network diagram of application of a packet loss positioning method according to an embodiment of the present invention.
  • Overlay network 30 shows two VTEPs: VTEP3 and VTEP4, VM3 connects to VTEP3, VM4 connects to VTEP4, and VM3, VM4 are virtual machines on two different servers.
  • the underlay network 40 shows five devices, which are device 41 to device 45, respectively.
  • the packet loss location device is VTEP3.
  • the service message (recorded as message 40) sent by VM3 does not successfully reach the VM4 to be accessed as an example.
  • VTEP3 constructs an analog message (denoted as message 41) with the same message characteristic parameters as the message characteristics of message 40.
  • message 41 an analog message
  • message characteristic parameters as the message characteristics of message 40.
  • the message feature parameters are as described above.
  • the VTEP3 stores locally a register entry that matches message 41.
  • the register entry may include the packet characteristic parameters of the packet 41, such as the source IP address and the destination IP address, the packet 41 as the identifier of the analog packet, and the VXLAN tunnel identifier of the forwarding packet 40.
  • the VXLAN tunnel identifier of the forwarded message 40 is the VXLAN tunnel 400.
  • VTEP3 sends matching rules to devices between VTEP3 and VTEP4 (ie, devices 41 through 45) and VTEP4.
  • the matching rule may be: the first reserved field in the VXLAN header in the VXLAN encapsulation is a set value, and the UDP destination port number in the outer UDP header in the VXLAN encapsulation is the set VXLAN port number.
  • VTEP3 calculates the packet characteristic parameter of the packet 41 according to the local chip forwarding logic to determine the UDP source port number, and uses the UDP source port number determined for the packet 41 and the locally pre-configured register entry matching the packet 41.
  • VXLAN tunnel 400 pairs of messages 41 The VXLAN encapsulation is performed and the VXLAN encapsulated message 41 is forwarded through the VXLAN tunnel corresponding to the VXLAN tunnel 400.
  • the VXLAN package of the message 41 differs from the VXLAN package of the message 40 in that the value in the first reserved field in the VXLAN header of the message 41 is the set value.
  • the UDP source port number in the outer UDP header of the VXLAN encapsulation of the packet 41 is the UDP source port number determined by the message 41, the UDP destination port number is the set port number specified by the VXLAN protocol, and the outer layer destination of the outer IP header
  • the IP address is the IP address of VTEP4 and the outer source IP address is the IP address of VTEP3.
  • the message 41 encapsulated in the VXLAN is referred to herein as a message 42.
  • the device 41 receives the message 42 and finds that the value in the first reserved field in the VXLAN header of the VXLAN encapsulation of the packet 42 is a set value, and the destination UDP port number in the outer UDP header in the VXLAN encapsulation is defined by the VXLAN protocol. Set the port number to meet the matching rule sent by VTEP3, and then send the packet loss positioning parameter to VTEP3.
  • the packet loss location parameter here includes: the device identifier of the device 41.
  • the device 41 determines the path to the destination IP address of the outer layer according to the outer destination IP address of the outer IP header in the VXLAN encapsulation of the packet 42.
  • the path is found to include two equal-cost paths, which are: device 41->device 42->Device 43->Device 44->VTEP4; Device 41->Device 45->Device 43->Device 44->VTEP4.
  • the device 41 hashes the UDP source port number of the outer UDP header in the VXLAN encapsulation of the packet 42 and selects the device 41->device 42->device 43->device 44->VTEP4 according to the hash result.
  • the path continues to forward the received message 42.
  • the processing after the device 42 to the device 45 receives the message 42 is similar to the processing of the device 41.
  • the VTEP4 After receiving the packet 42, the VTEP4 finds that the value in the first reserved field in the VXLAN header of the VXLAN encapsulation of the packet 42 is a set value, and the UDP destination port number in the outer UDP header in the VXLAN encapsulation is defined by the VXLAN protocol. Set the port number to meet the matching rule sent by VTEP3, then send the packet loss positioning parameter to VTEP3, and discover the VXLAN package. If the outer destination IP address of the middle and outer IP header is the IP address of VTEP4, the received packet 42 is discarded.
  • VTEP3 locates the packet loss device based on the received packet loss positioning parameters. Based on the foregoing manner b, an example is described to describe how the VTEP3 locates the packet loss device.
  • the VTEP3 first receives the packet loss location parameter sent by the device 41, and uses the packet loss location parameter sent by the device 41 as the current packet loss location parameter, and determines that the time of receiving the current packet loss location parameter is the time T1, and the check is after the T1. If the packet loss location parameter is received, the packet loss location parameter is received in the device, and the packet loss location parameter sent by the device 42 is used as the current packet loss location parameter to determine that the current packet is received. The time of the packet loss location parameter is time T2, and it is checked whether the packet loss location parameter is received within the set time after T2, for example, within 100 ms. If the packet loss location parameter sent by the device 43 is found, the device 43 sends the packet.
  • the packet loss location parameter is used as the current packet loss location parameter.
  • the time when the current packet loss location parameter is received is determined to be time T3.
  • the packet 43 is determined to be a packet loss device, that is, the packet 40 is located at the device 43 to be dropped.
  • the packet loss locating device provided by the embodiment of the present invention is described above.
  • the packet loss locating device provided by the embodiment of the present invention is described below.
  • FIG. 4 is a schematic structural diagram of a packet loss locating device applied to a VXLAN according to an embodiment of the present invention.
  • the device is applied to a first VTEP.
  • the apparatus includes a determining unit 401 and a forwarding unit 402.
  • a determining unit 401 configured to: when the service packet sent by the first virtual machine VM locally accessed by the first tunnel endpoint VTEP does not reach the second VM accessing the second VTEP, determine to simulate the service packet from the first An analog message forwarded by a VM to a service forwarding path of the second VM.
  • the analog message is the same as the message feature parameter of the service message.
  • the forwarding unit 402 is configured to calculate, according to the chip forwarding logic of the first VTEP, the packet feature parameters of the analog packet to determine the UDP source port number, and use the UDP source port number and the local presence and simulation determined by the analog packet.
  • the VXLAN tunnel identifier in the register entry of the message matches the VXLAN encapsulation of the analog message and forwards the VXLAN encapsulated analog packet through the VXLAN tunnel to identify the device that receives the VXLAN encapsulated analog message.
  • the determining unit 401 determines a service forwarding path for the analog service packet to be forwarded from the first VM to the second VM.
  • the simulated message includes: an analog message sent by the controller for simulating a service forwarding path forwarded by the service message from the first VM to the second VM.
  • the determining unit 401 determines that the simulated packet for the service forwarding path for the service packet to be forwarded from the first VM to the second VM includes: Generating an analog message for simulating a service forwarding path forwarded by the service message from the first VM to the second VM.
  • the VXLAN tunnel identifier in the register entry that matches the analog packet is the VXLAN tunnel identifier corresponding to the VXLAN tunnel used by the first VTEP to send the service packet.
  • the packet loss locating device is a controller for managing VTEP in the VXLAN
  • the locally existing register entry matching the analog packet is determined by the controller to send the first VM.
  • the service message is generated and sent to the first VTEP when it does not reach the second VM.
  • the packet loss locating device is the first VTEP
  • the locally existing register entry matching the analog packet is that the first VTEP determines the first VM. Generated when the sent service packet does not reach the second VM.
  • the device further includes:
  • the receiving unit 403 is configured to receive a packet loss positioning parameter that is sent by the device that receives the analog packet encapsulated by the VXLAN, where the packet loss location parameter includes: a device identifier of the device that receives the analog packet encapsulated by the VXLAN;
  • the locating unit 404 is configured to locate, according to the received packet loss positioning parameter, a packet loss device located between the first VM and the second VM.
  • the packet loss locating device is a controller for managing VTEP in the VXLAN
  • the first VTEP is a stack device that is aggregated across devices
  • the determining unit 401 receives the message sent by the controller.
  • the analog message used to simulate the service forwarding path of the service packet from the first VM to the second VM includes:
  • a setting message carrying an analog message for simulating a service forwarding path of the service packet from the first VM to the second VM, where the source MAC address of the setting packet is the The MAC address of a VM;
  • the VM forwards the analog packet to the service forwarding path of the second VM.
  • FIG. 5 is a schematic structural diagram of hardware of a packet loss locating device applied to a VXLAN according to an embodiment of the present invention.
  • the device is a first VTEP.
  • the apparatus can include:
  • a processor 501 such as a CPU, and a non-volatile memory 502.
  • a non-volatile memory 502 for storing machine readable instructions, including determining instructions and forwarding instructions that are executable by processor 501.
  • the processor 501 for example, a CPU, is configured to read the determination instruction stored in the non-volatile memory 502 to implement the following steps:
  • the service message sent by the first virtual machine VM that is accessed by the local device does not reach the second VM that accesses the second VTEP, determining a service forwarding path for simulating forwarding of the service packet from the first VM to the second VM Analog message.
  • the analog packet is the same as the packet characteristic parameter of the service packet.
  • the processor 501 is configured to read the forwarding instruction stored in the non-volatile memory 502 to implement the following steps:
  • Calculate the UDP source port number by using the local chip forwarding logic to calculate the packet characteristic parameter of the analog packet, and use the UDP source port number determined for the analog packet and the VXLAN tunnel in the register entry matching the analog packet. Identifying the VXLAN encapsulation of the analog packet and forwarding the VXLAN tunneled analog packet by using the VXLAN tunnel to identify the device that receives the VXLAN encapsulated analog packet to the packet loss locating device for the packet loss. The locating device locates the packet loss positioning parameter of the packet loss location of the service packet.
  • the processor 501 reads the determination instruction stored by the non-volatile memory 502 to implement:
  • the processor 501 reads the nonvolatile
  • the memory 502 stores the determined instructions to implement:
  • the VXLAN tunnel identifier in the register entry that matches the analog packet is the VXLAN tunnel identifier corresponding to the VXLAN tunnel used by the first VTEP to send the service packet.
  • the packet loss locating device is a controller for managing VTEP in the VXLAN
  • the locally existing register entry matching the analog packet is determined by the controller to determine that the service packet sent by the first VM does not reach the first
  • the second VM is generated and sent to the first VTEP.
  • the packet loss locating device is the first VTEP
  • the locally existing register entry matching the analog packet is generated by the first VTEP when it is determined that the service packet sent by the first VM does not reach the second VM.
  • the non-volatile memory 502 is further configured to store the receiving instruction and the positioning instruction.
  • the processor 501 is configured to read the receiving instruction stored in the non-volatile memory 502 to implement the following steps:
  • the packet loss positioning parameter sent by the device that receives the analog packet encapsulated by the VXLAN, and the packet loss location parameter includes at least the device identifier of the device that receives the analog packet encapsulated by the VXLAN.
  • the processor 501 is configured to read the positioning instruction stored in the non-volatile memory 502 to implement the following steps:
  • a packet loss device located between the first VM and the second VM is located based on the received packet loss positioning parameter.
  • the packet loss locating device is a controller for managing VTEP in the VXLAN
  • the first VTEP is a stack device that is aggregated across devices
  • the processor 501 reads the determined instructions stored by the non-volatile memory 502 to implement:
  • Each member device in the first VTEP receives an analog packet sent by the controller for simulating a service packet forwarded from the first VM to the second VM and carrying the device identifier of the device, where the device identifier is The position of the analog message is different from the position of the message feature parameter in the analog message; or
  • Each member device in the first VTEP receives a setting message sent by the controller and carries an analog message for simulating a service forwarding path of the service message from the first VM to the second VM, the setting message Source MAC address is the MAC address of the first VM;

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

第一隧道端点VTEP在本地接入的第一虚拟机VM发送的业务报文未到达接入第二VTEP的第二VM时,确定用于模拟所述业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。所述模拟报文与所述业务报文的报文特征参数相同。第一VTEP按照本地芯片转发逻辑对模拟报文的报文特征参数进行计算以确定UDP源端口号,利用为模拟报文确定的UDP源端口号和本地存在的与模拟报文匹配的寄存器表项中的VXLAN隧道标识对模拟报文进行VXLAN封装并通过所述VXLAN隧道标识对应的VXLAN隧道转发,以使接收到VXLAN封装的模拟报文的设备向丢包定位设备发送供所述丢包定位设备定位所述业务报文丢包位置的丢包定位参数。

Description

VXLAN中的丢包定位
发明背景
虚拟扩展局域网(VXLAN:Virtual eXtensible Local AreaNetwork)是一种将二层报文用三层协议进行封装的技术,具体包括:引入一个用户数据包协议(UDP:User Datagram Protocol)格式的外层隧道,作为数据路径层,而原有的报文数据作为净荷来传输。
由于净荷的外层采用了UDP作为传输手段,这可以保证净荷顺利地在二、三层网络中传输,从而实现了二层网络覆盖三层网络。这里,将覆盖的虚拟网络称为overlay网络,而将被覆盖的物理承载网络称为underlay网络。
附图简要说明
图1为本发明实施例提供的应用于VXLAN中的丢包定位方法的流程图;
图2为本发明实施例提供的丢包定位方法的应用组网图;
图3为本发明实施例提供的丢包定位方法的应用组网图;
图4为本发明实施例提供的应用于VXLAN中的丢包定位装置的结构示意图;
图5为本发明实施例提供的应用于VXLAN中的丢包定位装置的硬件结构示意图。
实施本发明的方式
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。这 样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
下面结合附图和具体实施例对本发明进行描述。
图1为本发明实施例提供的应用于VXLAN中的丢包定位方法的流程图。如图1所示,该方法可包括以下步骤:
步骤201,第一虚拟局域网隧道端点(VTEP:VXLAN Tunnel End Point)在本地接入的第一虚拟机(VM:Virtual Machine)发送的业务报文未到达接入第二VTEP的第二VM时,确定用于模拟从第一VM至第二VM的业务转发路径的模拟报文;所述模拟报文与所述业务报文的报文特征参数相同。
在本发明实施例中,第一VTEP、第二VTEP、第一VM、第二VM是为了便于描述而进行的命名。
在本发明实施例中,模拟报文的报文特征参数与第一VM发送的未到达第二VM的业务报文的报文特征参数相同。这里,报文特征参数可以为报文五元组,也可以为报文七元组。其中,报文五元组包括以下参数:目的IP地址、源IP地址、目的端口号、源端口号、协议类型;报文七元组包括以下参数:目的IP地址、源IP地址、目的MAC地址、源MAC地址、目的端口号、源端口号、协议类型。
在本发明实施例中,第一VM发送的未到达第二VM的业务报文带有载荷,而模拟报文不带有载荷。
步骤202,第一VTEP按照本地芯片转发逻辑对模拟报文的报文特征参数进行计算以确定外层UDP源端口号,利用为模拟报文确定的外层UDP源端口号和本地存在的与模拟报文匹配的寄存器表项中的VXLAN隧道标识对模拟报文进行VXLAN封装并通过所述VXLAN隧道标识对应的VXLAN隧道转发VXLAN封装的模拟报文,以使接收到 VXLAN封装的模拟报文的中间设备向丢包定位设备发送供所述丢包定位设备定位所述业务报文丢包位置的丢包定位参数。
在VXLAN封装中外层UDP头(Outer UDP Header)的UDP源端口号是第一VTEP按照本地芯片转发逻辑对报文的报文特征参数(比如报文的目的IP地址等)进行计算得到的,该芯片转发逻辑由芯片厂商设置,一般不公开。基于此,本发明实施例为了模拟从第一VM至第二VM的业务转发路径,就需要第一VTEP按照与上述业务报文的相同处理方式处理上述模拟报文,具体如步骤202所述,即重新按照与上述业务报文相同的转发逻辑对模拟报文执行转发处理。因为模拟报文的报文特征参数与第一VM发送的但未到达第二VM的业务报文的报文特征参数相同,这样,第一VTEP按照本地芯片转发逻辑对模拟报文的报文特征参数进行计算得到的外层UDP头的UDP源端口号就应该与为上述业务报文计算出来的外层UDP头的UDP源端口号完全相同。
在本发明实施例中,步骤202中与模拟报文匹配的寄存器表项中的VXLAN隧道标识是第一VTEP在发送上述业务报文时使用的VXLAN隧道对应的VXLAN隧道标识,这能够保证模拟报文和上述的业务报文通过同一个VXLAN隧道转发,以保证真实地模拟业务报文的业务转发路径。在本发明实施例中,与模拟报文匹配的寄存器表项可包括访问控制列表(ACL:Access Control List)表项,ACL表项中的匹配项为模拟报文的报文特征参数、模拟报文的标识。为避免影响UDP源端口号的计算,这里模拟报文的标识在模拟报文的位置不同于报文特征参数的位置。ACL表项中的处理动作为分配上述的VXLAN隧道标识给模拟报文。
在VXLAN中,一般会有控制器管理VTEP。当VXLAN中存在控制器时,上述的丢包定位设备可为VXLAN中用于管理VTEP的控制器。
在本发明实施例中,当丢包定位设备为控制器时,上述步骤201中 第一VTEP确定用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文包括:第一VTEP接收控制器发送的用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。
当丢包定位设备为控制器时,上述步骤202中本地存在的与模拟报文匹配的寄存器表项是由控制器在确定出第一VM发送的业务报文未到达第二VM时生成并发送给第一VTEP的。
在本发明实施例中,当控制器为丢包定位设备时,第一VTEP可以为单一设备,也可以是跨设备聚合的堆叠设备。
其中,当第一VTEP为单一设备时,因为控制器具有网络的全局拓扑信息,其能确定出上述的业务报文是从第一VTEP发出去的,因此可向第一VTEP发送上述的模拟报文和与模拟报文匹配的寄存器表项。
而当第一VTEP是跨设备聚合的堆叠设备时,控制器无法知道上述的业务报文是堆叠设备中的哪台成员设备接收的。业务报文进入不同的成员设备,业务转发路径可能会不同。因此控制器需要和堆叠设备交互,获取堆叠设备是由几台成员设备堆叠组成,并且获取各成员设备的设备标识,比如slot号。基于此,上述第一VTEP接收控制器发送的用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文可通过以下两种方式中任一方式实现:
在第一种方式下,控制器向第一VTEP中每一成员设备发送用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。控制器向每一成员设备发送的模拟报文除了携带上述的报文特征参数外还额外携带该成员设备的设备标识。比如,第一VTEP由成员设备1至3组成,则控制器向成员设备1发送的模拟报文除了携带上述的报文特征参数外还携带成员设备1的设备标识,控制器向成员设备2发送的模拟报文除了携带上述的报文特征参数外还携带成员设备2的设备标识, 控制器向成员设备3发送的模拟报文除了携带上述的报文特征参数外还携带成员设备3的设备标识。
在本方式下,设备标识在模拟报文的位置与模拟报文的报文特征参数在模拟报文的位置不同,以防止设备标识干扰第一VTEP利用报文特征参数计算UDP源端口号。
在本方式下,第一VTEP接收控制器发送的用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文可包括:
第一VTEP中每一成员设备接收控制器发送的用于模拟业务报文从第一VM转发至第二VM的业务转发路径、且携带本设备的设备标识的模拟报文。
当第一VTEP中每一成员设备接收到用于模拟业务报文从第一VM转发至第二VM的业务转发路径、且携带本设备的设备标识的模拟报文时,执行图1所示流程的步骤202。在本方式下,控制器会向第一VTEP中各个成员设备发送相同的与模拟报文匹配的寄存器表项。
第二种方式应用在堆叠设备中成员设备在本地成员端口学习源MAC地址的场景。
在本方式下,控制器向第一VTEP中每一成员设备发送设定报文,该设定报文携带了用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。在本方式下,设定报文的源MAC地址为第一VM的MAC地址,设定报文携带的模拟报文不再额外携带该成员设备的设备标识,仅携带上述的报文特征参数。比如,第一VTEP由成员设备1至3组成,则在本方式下,控制器向成员设备1、成员设备2、成员设备3发送相同的设定报文,该设定报文的源MAC地址为第一VM的MAC地址,设定报文携带的模拟报文携带上述的报文特征参数。
基于此,在本方式下,第一VTEP接收控制器发送的用于模拟业务 报文从第一VM转发至第二VM的业务转发路径的模拟报文可包括:
第一VTEP中每一成员设备接收控制器发送的携带用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文的设定报文;
检查所述设定报文的源MAC地址是否匹配本成员设备已学习的源MAC地址,如果是,从所述设定报文中解析出用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。在本方式下,模拟报文不需要携带成员设备的设备标识,且只有匹配报文源MAC地址的成员设备执行图1所示的流程。
在本发明一实施例中,不管VXLAN中是否存在上述的控制器,上述的丢包定位设备也可为第一VTEP。
在本发明一实施例中,当丢包定位设备为第一VTEP时,上述步骤201中确定用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文包括:生成用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。
在本发明一实施例中,当丢包定位设备为第一VTEP时,上述步骤202中本地存在的与模拟报文匹配的寄存器表项是第一VTEP在确定出第一VM发送的业务报文未到达第二VM时生成的。
本发明实施例中,为了区分VXLAN封装的上述业务报文,第一VTEP发送的VXLAN封装的模拟报文中VXLAN头内指定保留字段为设定值,比如100。在本发明实施例中,指定保留字段为VXLAN头内的第一个保留字段。
当第一VTEP发送VXLAN封装的模拟报文后,处于从第一VM至第二VVM的业务转发路径上的设备会接收到VXLAN封装的模拟报文。接收到VXLAN封装的模拟报文的设备可利用模拟报文的VXLAN封装匹配本地保存的匹配规则,如果匹配成功,则向丢包定位设备发送供丢 包定位设备定位上述业务报文丢包位置的丢包定位参数。这里的匹配规则可为丢包定位设备发送的,也可为预先配置的。下述两个实施例均以丢包定位设备发送匹配规则为例。具体地,结合上面描述的VXLAN封装,这里的匹配规则具体可为:VXLAN封装中外层UDP头内的UDP目的端口号为VXLAN协议规定的设定端口号,且VXLAN头内的指定保留字段内的数值为设定值,比如100。在本发明实施例中,指定保留字段为VXLAN头内的第一个保留字段。
在本发明实施例中,接收到VXLAN封装的模拟报文的设备发送的丢包定位参数可包括:接收到VXLAN封装的模拟报文的设备的设备标识。在本发明实施例中,为定位出上述业务报文经由的业务转发路径,丢包定位参数还可进一步包含收到VXLAN封装的模拟报文的端口的标识。
在本发明一实施例中,接收到VXLAN封装的模拟报文的设备不为第二VM接入的第二VTEP。因为VXLAN封装的模拟报文是在上述的业务报文丢包时才发送的,其一般不会成功到达第二VM接入的第二VTEP的。基于此,接收到VXLAN封装的模拟报文的设备除了向丢包定位设备发送丢包定位参数外,还会继续按照VXLAN封装中外层IP头的目的IP地址确定转发路径并转发接收的VXLAN封装的模拟报文。其中,在按照VXLAN封装中外层IP头的目的IP地址确定的转发路径为多条等价路径时,可通过基于VXLAN封装中UDP源端口号进行哈希运算确定一个转发路径转发接收的VXLAN封装的模拟报文。而在本发明另一实施例中,VXLAN封装的模拟报文可能成功到达第二VM接入的第二VTEP。为防止VXLAN封装的模拟报文干扰正常的业务,在本发明实施例中,当第二VTEP接收到VXLAN封装的模拟报文时,其会向丢包定位设备发送丢包定位参数,但不再继续转发模拟报文,而是 丢弃接收的VXLAN封装的模拟报文。下面描述第二VTEP接收到VXLAN封装的模拟报文的处理情况,比如,第二VTEP丢包的情况,或者以下处理情况:第一VM访问第二VM时同时发送N(N大于1)个相同业务报文给第二VM,结果有M(M小于N)个业务报文成功到达第二VM,即N-M个业务报文未到达第二VM。假如第一VTEP按照类似图1所示的流程确定N个模拟报文并按照本地芯片转发逻辑分别对N个模拟报文进行VXLAN封装并转发,则就会有M个模拟报文到达第二VTEP,第二VTEP会丢弃收到的VXLAN封装的模拟报文。
在本发明实施例中,不管丢包定位设备是上述的控制器,还是第一VTEP,接收到VXLAN封装的模拟报文的设备都会向丢包定位设备发送丢包定位参数。当丢包定位设备收到丢包定位参数后,基于收到的丢包定位参数定位出位于第一VM和第二VM之间的丢包设备。
这里基于收到的丢包定位参数定位出位于第一VM和第二VM之间的丢包设备具体可为以下两种实现方式:
在方式a下,丢包定位设备是在设定的丢包定位时间到达时基于收到的丢包定位参数定位出位于第一VM和第二VM之间的丢包设备。
具体地,在本方式a下,基于收到的丢包定位参数定位出位于第一VM和第二VM之间的丢包设备包括:
检测设定的丢包定位时间是否达到,如果达到,则从已接收的所有丢包定位参数中确定出最后收到的丢包定位参数,将该最后收到的丢包定位参数中的设备标识对应的设备确定为丢包设备。
本方式a下,设定的丢包定位时间可根据实际情况设置,但一般都会远远大于模拟报文在两个不同设备之间转发的时间。
在方式b下,丢包定位设备并非是在设定的丢包定位时间到达时才基于收到的丢包定位参数定位出位于第一VM和第二VM之间的丢包设 备,而是随着模拟报文的转发而执行定位处理。
在本方式b下,基于收到的丢包定位参数定位出位于第一VM和第二VM之间的丢包设备包括:
在每次接收到丢包定位参数时将该丢包定位参数作为当前丢包定位参数,确定收到当前丢包定位参数的时间,在该确定的时间之后的设定时间内如果再接收到丢包定位参数,则返回将该丢包定位参数作为当前丢包定位参数的操作,在该确定的时间之后的设定时间内如果未接收到丢包定位参数,确定当前丢包定位参数中的设备标识对应的设备为丢包设备。
在方式b中,设定时间大于模拟报文在两个不同设备之间转发的时间。
在本发明实施例中,不管是方式a还是方式b,最终会从第一VM接入的第一VTEP至第二VM接入的第二VTEP之间确定出丢包设备。
通过图1所示的流程可以看出,在本发明实施例中,当一个VM的业务报文无法到达另一个VM时,通过模拟业务报文的业务转发路径能够快速锁定业务报文转发过程中发生丢包的设备。这种方法能够快速、简单地定位丢包位置,并大大减少工作量。
下面通过两个实施例对应用于VXLAN中的丢包定位方法进行描述。
图2为本发明实施例提供的丢包定位方法的应用组网图。在图2中,Overlay网络10示出两个VTEP:VTEP1和VTEP2,其中,VM1连接VTEP1,VM2连接VTEP2,VM1、VM2是两个不同服务器上的虚拟机。控制器控制VTEP1和VTEP2。underlay网络20示出6个设备,分别为设备31至设备36。在图2中,丢包定位设备为控制器。
在图2中,以VM1发送的业务报文(记为报文0)未成功到达要访 问的VM2为例,VTEP1为单一设备。
控制器构造一个报文特征参数与报文0的报文特征参数完全相同的模拟报文(记为报文1),发送报文1至VTEP1。报文特征参数如上所述。
控制器还生成与报文1匹配的寄存器表项,发送寄存器表项至VTEP1。这里寄存器表项中可包含报文1的报文特征参数,比如源IP地址和目的IP地址、报文1作为模拟报文的标识和转发报文0的VXLAN隧道标识。在本发明实施例中,转发报文0的VXLAN隧道标识为VXLAN隧道100。
控制器下发匹配规则至介于VTEP1与VTEP2之间的设备(即设备31至设备36)以及VTEP2。图2没有示出控制器发送匹配规则给图2中的设备31至设备35的线路。这里,匹配规则可为:VXLAN封装中VXLAN头内的第一个保留字段为设定值,且VXLAN封装中外层UDP头内的UDP目的端口号为设定的VXLAN端口号。
VTEP1接收控制器发送的报文1,按照本地芯片转发逻辑对报文1的报文特征参数进行计算以确定UDP源端口号,利用为报文1确定的UDP源端口号和控制器发送的与报文1匹配的寄存器表项中的VXLAN隧道100对报文1进行VXLAN封装并通过VXLAN隧道100对应的VXLAN隧道转发VXLAN封装的报文1。这里,报文1的VXLAN封装相比于报文0的VXLAN封装有如下区别:报文1的VXLAN头内第一个保留字段内的数值为设定值。报文1的VXLAN封装中外层UDP头内的UDP源端口号为报文1被确定的UDP源端口号,UDP目的端口号为VXLAN协议规定的设定端口号,外层IP头的外层目的IP地址为VTEP2的IP地址、外层源IP地址为VTEP1的IP地址。这里将VXLAN封装的报文1称为报文2。
设备31收到报文2,发现报文2的VXLAN封装中VXLAN头内的第一个保留字段内的数值为设定值,且VXLAN封装中外层UDP头内的目的UDP端口号为VXLAN协议规定的设定端口号,满足控制器下发的匹配规则,则上送丢包定位参数至控制器。这里的丢包定位参数包括:设备31的设备标识。
设备31会依据报文2的VXLAN封装中外层IP头的外层目的IP地址确定到达该外层目的IP地址的路径,结果发现该路径包括两条等价路径,依次为:设备31->设备32->设备33->设备34->设备35->VTEP2;设备31->设备36->设备33->设备34->设备35->VTEP2。基于此,设备31对报文2的VXLAN封装中外层UDP头的UDP源端口号进行哈希运算,依据哈希结果选择设备31->设备32->设备33->设备34->设备35->VTEP2这一路径继续转发收到的报文2。
设备32至设备35收到报文2后的处理类似设备31的处理。
VTEP2收到报文2后,发现报文2的VXLAN封装中VXLAN头内的第一个保留字段内的数值为设定值,且VXLAN封装中外层UDP头内的UDP目的端口号为VXLAN协议规定的设定端口号,满足控制器发送的匹配规则,则发送丢包定位参数至控制器,并发现VXLAN封装中外层IP头的外层目的IP地址为本VTEP2的IP地址,则丢弃接收的报文2。
控制器对收到的所有丢包定位参数进行汇总和统计以定位出丢包设备。基于上述的方式a举例描述控制器如何定位出丢包设备。
比如,控制器收到的丢包定位参数为:
(设备31)、(设备32)、(设备33)、(设备34)。
控制器基于上述的方式a,在设定的丢包定位时间到达时,从已接收的所有丢包定位参数中确定出最后收到的丢包定位参数,即设备34, 将该最后收到的丢包定位参数,即设备34,对应的设备确定为丢包设备,即定位上述的报文0在设备34丢包。
从而,控制器通过对收到的丢包定位参数进行汇总和统计定位出报文0的丢包设备。
图3为本发明实施例提供的丢包定位方法的应用组网图。在图3中,Overlay网络30示出两个VTEP:VTEP3和VTEP4,VM3连接VTEP3,VM4连接VTEP4,VM3、VM4是两个不同服务器上的虚拟机。underlay网络40示出5个设备,分别为设备41至设备45。在图3中,丢包定位设备为VTEP3。
在图3中,以VM3发送的业务报文(记为报文40)未成功到达要访问的VM4为例。
VTEP3构造一个报文特征参数与报文40的报文特征参数完全相同的模拟报文(记为报文41)。报文特征参数如上所述。
VTEP3在本地存储与报文41匹配的寄存器表项。寄存器表项中可包含报文41的报文特征参数,比如源IP地址和目的IP地址、报文41作为模拟报文的标识和转发报文40的VXLAN隧道标识。在本发明实施例中,转发报文40的VXLAN隧道标识为VXLAN隧道400。
VTEP3发送匹配规则给介于VTEP3与VTEP4之间的设备(即设备41至设备45)以及VTEP4。
这里,匹配规则可为:VXLAN封装中VXLAN头内的第一个保留字段为设定值,且VXLAN封装中外层UDP头内的UDP目的端口号为设定的VXLAN端口号。
VTEP3按照本地芯片转发逻辑对报文41的报文特征参数进行计算以确定UDP源端口号,利用为报文41确定的UDP源端口号和本地预先配置的与报文41匹配的寄存器表项中的VXLAN隧道400对报文41 进行VXLAN封装并通过VXLAN隧道400对应的VXLAN隧道转发VXLAN封装的报文41。这里,报文41的VXLAN封装相比于报文40的VXLAN封装有如下区别:报文41的VXLAN头内的第一个保留字段内的数值为设定值。报文41的VXLAN封装中外层UDP头内的UDP源端口号为报文41被确定的UDP源端口号,UDP目的端口号为VXLAN协议规定的设定端口号,外层IP头的外层目的IP地址为VTEP4的IP地址、外层源IP地址为VTEP3的IP地址。这里将VXLAN封装的报文41称为报文42。
设备41收到报文42,发现报文42的VXLAN封装中VXLAN头内的第一个保留字段内的数值为设定值,且VXLAN封装中外层UDP头内的目的UDP端口号为VXLAN协议规定的设定端口号,满足VTEP3下发的匹配规则,则发送丢包定位参数至VTEP3。这里的丢包定位参数包括:设备41的设备标识。
设备41会依据报文42的VXLAN封装中外层IP头的外层目的IP地址确定到达该外层目的IP地址的路径,结果发现该路径包括两条等价路径,依次为:设备41->设备42->设备43->设备44->VTEP4;设备41->设备45->设备43->设备44->VTEP4。基于此,设备41对报文42的VXLAN封装中外层UDP头的UDP源端口号进行哈希运算,依据哈希结果选择设备41->设备42->设备43->设备44->VTEP4这一路径继续转发收到的报文42。
设备42至设备45收到报文42后的处理类似设备41的处理。
VTEP4收到报文42后,发现报文42的VXLAN封装中VXLAN头内的第一个保留字段内的数值为设定值,且VXLAN封装中外层UDP头内的UDP目的端口号为VXLAN协议规定的设定端口号,满足VTEP3发送的匹配规则,则发送丢包定位参数至VTEP3,并发现VXLAN封装 中外层IP头的外层目的IP地址为本VTEP4的IP地址,则丢弃接收的报文42。
VTEP3依据收到的丢包定位参数定位出丢包设备。基于上述的方式b举例描述VTEP3如何定位出丢包设备。
比如,VTEP3先收到设备41发送的丢包定位参数,将设备41发送的丢包定位参数作为当前丢包定位参数,确定收到当前丢包定位参数的时间为时间T1,检查在T1之后的设定时间比如100ms内是否再接收到丢包定位参数,如果发现又收到设备42发送的丢包定位参数,则将设备42发送的丢包定位参数作为当前丢包定位参数,确定收到当前丢包定位参数的时间为时间T2,检查在T2之后的设定时间比如100ms内是否再接收到丢包定位参数,如果发现又收到设备43发送的丢包定位参数,则将设备43发送的丢包定位参数作为当前丢包定位参数,确定收到当前丢包定位参数的时间为时间T3,检查在T3之后的设定时间比如100ms内是否再接收到丢包定位参数,如果发现未再收到丢包定位参数,则将设备43确定为丢包设备,即定位上述的报文40在设备43丢包。
以上对本发明实施例提供的丢包定位方法进行了描述,下面对本发明实施例提供的丢包定位装置进行描述。
图4为本发明实施例提供的应用于VXLAN中的丢包定位装置的结构示意图。所述装置应用于第一VTEP。如图4所示,该装置包括确定单元401和转发单元402。
确定单元401,用于在第一隧道端点VTEP本地接入的第一虚拟机VM发送的业务报文未到达接入第二VTEP的第二VM时,确定用于模拟所述业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。在本发明实施例中,所述模拟报文与所述业务报文的报文特征参数相同。
转发单元402,用于按照第一VTEP本地的芯片转发逻辑对模拟报文的报文特征参数进行计算以确定UDP源端口号,利用为模拟报文确定的UDP源端口号和本地存在的与模拟报文匹配的寄存器表项中的VXLAN隧道标识对模拟报文进行VXLAN封装并通过所述VXLAN隧道标识对应的VXLAN隧道转发VXLAN封装的模拟报文,以使接收到VXLAN封装的模拟报文的设备向丢包定位设备发送供所述丢包定位设备定位所述业务报文丢包位置的丢包定位参数。
在本发明实施例中,如果所述丢包定位设备为VXLAN中用于管理VTEP的控制器,所述确定单元401确定用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文包括:接收控制器发送的用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。
在本发明实施例中,如果所述丢包定位设备为第一VTEP,所述确定单元401确定用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文包括:生成用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。
在本发明实施例中,所述与模拟报文匹配的寄存器表项中的VXLAN隧道标识是第一VTEP发送所述业务报文时使用的VXLAN隧道对应的VXLAN隧道标识。
在本发明实施例中,如果所述丢包定位设备为VXLAN中用于管理VTEP的控制器,所述本地存在的与模拟报文匹配的寄存器表项是由控制器在确定出第一VM发送的业务报文未到达第二VM时生成并发送给第一VTEP的。
在本发明实施例中,如果所述丢包定位设备为第一VTEP,所述本地存在的与模拟报文匹配的寄存器表项是第一VTEP在确定出第一VM 发送的业务报文未到达第二VM时生成的。
在本发明实施例中,如果所述丢包定位设备为第一VTEP,如图4所示,该装置进一步包括:
接收单元403,用于接收收到VXLAN封装的模拟报文的设备发送的丢包定位参数,丢包定位参数包括:收到VXLAN封装的模拟报文的设备的设备标识;
定位单元404,用于基于收到的丢包定位参数定位出位于第一VM和第二VM之间的丢包设备。
在本发明实施例中,当所述丢包定位设备为VXLAN中用于管理VTEP的控制器时,如果所述第一VTEP为跨设备聚合的堆叠设备,所述确定单元401接收控制器发送的用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文包括:
接收控制器发送的用于模拟业务报文从第一VM转发至第二VM的业务转发路径、且携带所述第一VTEP中成员设备的设备标识的模拟报文,所述设备标识在模拟报文的位置不同于报文特征参数在模拟报文的位置;或者,
接收控制器发送的携带了用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文的设定报文,所述设定报文的源MAC地址为所述第一VM的MAC地址;
检查所述设定报文的源MAC地址是否匹配所述第一VTEP中成员设备已学习的源MAC地址,如果是,从所述设定报文中解析出用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。
本发明实施例还提供了图4所示装置的硬件结构示意图。参见图5,图5为本发明实施例提供的应用于VXLAN中的丢包定位装置的硬件结构示意图。所述装置为第一VTEP。
如图5,该装置可包括:
处理器501,例如CPU,和非易失性存储器502。
在本发明实施例中,非易失性存储器502,用于存储机器可读指令,包括可以由处理器501执行的确定指令和转发指令。
在本发明实施例中,处理器501,例如CPU,用于读取非易失性存储器502中存储的确定指令,以实现以下步骤:
本地接入的第一虚拟机VM发送的业务报文未到达接入第二VTEP的第二VM时,确定用于模拟所述业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。所述模拟报文与所述业务报文的报文特征参数相同。
在本发明实施例中,处理器501用于读取非易失性存储器502中存储的转发指令,以实现以下步骤:
按照本地芯片转发逻辑对模拟报文的报文特征参数进行计算确定UDP源端口号,利用为模拟报文确定的UDP源端口号和本地存在的与模拟报文匹配的寄存器表项中的VXLAN隧道标识对模拟报文进行VXLAN封装并通过所述VXLAN隧道标识对应的VXLAN隧道转发VXLAN封装的模拟报文,以使接收到VXLAN封装的模拟报文的设备向丢包定位设备发送供所述丢包定位设备定位所述业务报文丢包位置的丢包定位参数。
在本发明实施例中,如果所述丢包定位设备为VXLAN中用于管理VTEP的控制器,所述处理器501读取非易失性存储器502存储的确定指令以实现:
接收控制器发送的用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。
如果所述丢包定位设备为第一VTEP,所述处理器501读取非易失 性存储器502存储的确定指令以实现:
生成用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。
在本发明实施例中,所述与模拟报文匹配的寄存器表项中的VXLAN隧道标识是第一VTEP发送所述业务报文时使用的VXLAN隧道对应的VXLAN隧道标识。
如果所述丢包定位设备为VXLAN中用于管理VTEP的控制器,所述本地存在的与模拟报文匹配的寄存器表项是由控制器在确定出第一VM发送的业务报文未到达第二VM时生成并发送给第一VTEP的。
如果所述丢包定位设备为第一VTEP,所述本地存在的与模拟报文匹配的寄存器表项是第一VTEP在确定出第一VM发送的业务报文未到达第二VM时生成的。
在本发明实施例中,如果所述丢包定位设备为第一VTEP,非易失性存储器502进一步用于存储接收指令和定位指令。
在本发明实施例中,处理器501用于读取非易失性存储器502中存储的接收指令,以实现以下步骤:
接收收到VXLAN封装的模拟报文的设备发送的丢包定位参数,丢包定位参数至少包括:收到VXLAN封装的模拟报文的设备的设备标识。
在本发明实施例中,处理器501用于读取非易失性存储器502中存储的定位指令,以实现以下步骤:
基于收到的丢包定位参数定位出位于第一VM和第二VM之间的丢包设备。
在本发明实施例中,当所述丢包定位设备为VXLAN中用于管理VTEP的控制器时,如果所述第一VTEP为跨设备聚合的堆叠设备,所 述处理器501读取非易失性存储器502存储的确定指令以实现:
第一VTEP中每一成员设备接收控制器发送的用于模拟业务报文从第一VM转发至第二VM的业务转发路径、且携带本设备的设备标识的模拟报文,所述设备标识在模拟报文的位置不同于报文特征参数在模拟报文的位置;或者,
第一VTEP中每一成员设备接收控制器发送的携带了用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文的设定报文,所述设定报文的源MAC地址为所述第一VM的MAC地址;
检查所述设定报文的源MAC地址是否匹配本设备已学习的源MAC地址,如果是,从所述设定报文中解析出用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (10)

  1. 一种应用于虚拟扩展局域网VXLAN中的丢包定位方法,其特征在于,该方法包括:
    第一虚拟局域网隧道端点VTEP在本地接入的第一虚拟机VM发送的业务报文未到达接入第二VTEP的第二VM时,确定用于模拟所述业务报文从第一VM转发至第二VM的业务转发路径的模拟报文;所述模拟报文与所述业务报文的报文特征参数相同;
    所述第一VTEP按照本地芯片转发逻辑对模拟报文的报文特征参数进行计算以确定用户数据包协议UDP源端口号,利用为模拟报文确定的UDP源端口号和本地存在的与模拟报文匹配的寄存器表项中的VXLAN隧道标识对模拟报文进行VXLAN封装并通过所述VXLAN隧道标识对应的VXLAN隧道转发VXLAN封装的模拟报文,以使接收到VXLAN封装的模拟报文的设备向丢包定位设备发送供所述丢包定位设备定位所述业务报文丢包位置的丢包定位参数。
  2. 根据权利要求1所述的方法,其特征在于,如果所述丢包定位设备为VXLAN中用于管理VTEP的控制器,所述第一VTEP确定用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文包括:第一VTEP接收控制器发送的用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文;
    如果所述丢包定位设备为第一VTEP,所述第一VTEP确定用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文包括:第一VTEP生成用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。
  3. 根据权利要求1所述的方法,其特征在于,所述与模拟报文匹配的寄存器表项中的VXLAN隧道标识是第一VTEP发送所述业务报文时 使用的VXLAN隧道对应的VXLAN隧道标识;
    如果所述丢包定位设备为VXLAN中用于管理VTEP的控制器,所述本地存在的与模拟报文匹配的寄存器表项是由控制器在确定出第一VM发送的业务报文未到达第二VM时生成并发送给第一VTEP的;
    如果所述丢包定位设备为第一VTEP,所述本地存在的与模拟报文匹配的寄存器表项是第一VTEP在确定出第一VM发送的业务报文未到达第二VM时生成的。
  4. 根据权利要求1所述的方法,其特征在于,如果所述丢包定位设备为第一VTEP,该方法进一步包括:
    接收收到VXLAN封装的模拟报文的设备发送的丢包定位参数,所述丢包定位参数包括:收到VXLAN封装的模拟报文的设备的设备标识;
    基于收到的丢包定位参数定位出位于第一VM和第二VM之间的丢包设备。
  5. 根据权利要求2所述的方法,其特征在于,当所述丢包定位设备为VXLAN中用于管理VTEP的控制器时,如果所述第一VTEP为跨设备聚合的堆叠设备,所述第一VTEP接收控制器发送的用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文包括:
    第一VTEP中每一成员设备接收控制器发送的用于模拟业务报文从第一VM转发至第二VM的业务转发路径、且携带本设备的设备标识的模拟报文,所述设备标识在模拟报文的位置不同于报文特征参数在模拟报文的位置;或者,
    第一VTEP中每一成员设备接收控制器发送的携带了用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文的设定报文,所述设定报文的源MAC地址为所述第一VM的MAC地址;
    检查所述设定报文的源MAC地址是否匹配本设备已学习的源MAC地址,如果是,从所述设定报文中解析出用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。
  6. 一种应用于虚拟扩展局域网VXLAN的丢包定位装置,其特征在于,所述装置为第一虚拟局域网隧道端点VTEP,该装置包括非易失性存储器和处理器;
    所述非易失性存储器,用于存储由处理器执行的机器可读指令,所述机器可读指令包括确定指令和转发指令;
    所述处理器,用于读取非易失性存储器存储的确定指令和转发指令以实现:
    所述第一VTEP本地接入的第一虚拟机VM发送的业务报文未到达接入第二VTEP的第二VM时,确定用于模拟所述业务报文从第一VM转发至第二VM的业务转发路径的模拟报文;所述模拟报文与所述业务报文的报文特征参数相同;
    按照本地芯片转发逻辑对模拟报文的报文特征参数进行计算以确定用户数据包协议UDP源端口号,利用为模拟报文确定的UDP源端口号和本地存在的与模拟报文匹配的寄存器表项中的VXLAN隧道标识对模拟报文进行VXLAN封装并通过所述VXLAN隧道标识对应的VXLAN隧道转发,以使接收到VXLAN封装的模拟报文的设备向丢包定位设备发送供所述丢包定位设备定位所述业务报文丢包位置的丢包定位参数。
  7. 根据权利要求6所述的装置,其特征在于,如果所述丢包定位设备为VXLAN中用于管理VTEP的控制器,所述处理器读取非易失性存储器存储的确定指令以实现:
    接收控制器发送的用于模拟业务报文从第一VM转发至第二VM的 业务转发路径的模拟报文;
    如果所述丢包定位设备为第一VTEP,所述处理器读取非易失性存储器存储的确定指令以实现:
    生成用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。
  8. 根据权利要求6所述的装置,其特征在于,所述与模拟报文匹配的寄存器表项中的VXLAN隧道标识是第一VTEP发送所述业务报文时使用的VXLAN隧道对应的VXLAN隧道标识;
    如果所述丢包定位设备为VXLAN中用于管理VTEP的控制器,所述本地存在的与模拟报文匹配的寄存器表项是由控制器在确定出第一VM发送的业务报文未到达第二VM时生成并发送给第一VTEP的;
    如果所述丢包定位设备为第一VTEP,所述本地存在的与模拟报文匹配的寄存器表项是第一VTEP在确定出第一VM发送的业务报文未到达第二VM时生成的。
  9. 根据权利要求6所述的装置,其特征在于,如果所述丢包定位设备为第一VTEP,所述机器可读指令进一步包括接收指令和定位指令;
    所述处理器,用于读取非易失性存储器存储的接收指令和定位指令以实现:
    接收收到VXLAN封装的模拟报文的设备发送的丢包定位参数,所述丢包定位参数包括:收到VXLAN封装的模拟报文的设备的设备标识;
    基于收到的丢包定位参数定位出位于第一VM和第二VM之间的丢包设备。
  10. 根据权利要求7所述的装置,其特征在于,当所述丢包定位设 备为VXLAN中用于管理VTEP的控制器时,如果所述第一VTEP为跨设备聚合的堆叠设备,所述处理器读取非易失性存储器存储的确定指令以实现:
    第一VTEP中每一成员设备接收控制器发送的用于模拟业务报文从第一VM转发至第二VM的业务转发路径、且携带本设备的设备标识的模拟报文,所述设备标识在模拟报文的位置不同于报文特征参数在模拟报文的位置;或者,
    第一VTEP中每一成员设备接收控制器发送的携带了用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文的设定报文,所述设定报文的源MAC地址为所述第一VM的MAC地址;
    检查所述设定报文的源MAC地址是否匹配本设备已学习的源MAC地址,如果是,从所述设定报文中解析出用于模拟业务报文从第一VM转发至第二VM的业务转发路径的模拟报文。
PCT/CN2016/089345 2015-07-10 2016-07-08 Vxlan中的丢包定位 WO2017008690A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US15/743,192 US10484259B2 (en) 2015-07-10 2016-07-08 Packet loss locating in VXLAN
EP16823837.6A EP3306877B1 (en) 2015-07-10 2016-07-08 Packet loss positioning in vxlan
JP2018520012A JP6514415B2 (ja) 2015-07-10 2016-07-08 Vxlanにおけるパケットロスの位置特定

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510406748.6 2015-07-10
CN201510406748.6A CN106341333B (zh) 2015-07-10 2015-07-10 应用于vxlan中的丢包定位方法和装置

Publications (1)

Publication Number Publication Date
WO2017008690A1 true WO2017008690A1 (zh) 2017-01-19

Family

ID=57756842

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/089345 WO2017008690A1 (zh) 2015-07-10 2016-07-08 Vxlan中的丢包定位

Country Status (5)

Country Link
US (1) US10484259B2 (zh)
EP (1) EP3306877B1 (zh)
JP (1) JP6514415B2 (zh)
CN (1) CN106341333B (zh)
WO (1) WO2017008690A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3516829B1 (en) * 2016-09-26 2021-07-07 Nant Holdings IP, LLC Virtual circuits in cloud networks
CN108667945B (zh) * 2017-03-30 2020-10-23 华为技术有限公司 一种报文传输方法及装置
CN108737221B (zh) * 2018-06-28 2020-09-15 新华三技术有限公司 丢包检测方法及通信链路系统
CN112291076A (zh) * 2019-07-25 2021-01-29 华为技术有限公司 丢包定位方法、装置及系统、计算机存储介质
CN111371667A (zh) * 2019-10-23 2020-07-03 上海科技网络通信有限公司 一种面向云计算环境下基于VxLAN技术的LTE VPDN组网方法
JP2021182689A (ja) * 2020-05-19 2021-11-25 富士通株式会社 スイッチ特定方法、及びスイッチ特定プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1555788A1 (en) * 2004-01-15 2005-07-20 Alcatel Method for improving the quality of an encoded video bit stream transmitted over a wireless link, and corresponding receiver
CN1972219A (zh) * 2005-11-23 2007-05-30 杭州华为三康技术有限公司 网络性能测试方法、系统及网络设备
CN101166122A (zh) * 2006-10-18 2008-04-23 中兴通讯股份有限公司 一种实现通信终端间网络故障的定位方法
CN102546243A (zh) * 2011-12-23 2012-07-04 广东电网公司电力科学研究院 基于SP Guru的电力调度数据网故障仿真分析方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7483379B2 (en) * 2002-05-17 2009-01-27 Alcatel Lucent Passive network monitoring system
US8588302B2 (en) 2008-06-13 2013-11-19 Telefonaktiebolaget Lm Ericsson (Publ) Packet loss analysis
CN101640629B (zh) * 2008-07-29 2012-08-29 华为技术有限公司 一种链路丢包监控的方法和双向转发探测设备
CN102118277B (zh) 2009-12-30 2013-12-25 华为技术有限公司 丢包检测方法和装置及路由器
US8619588B2 (en) * 2010-04-07 2013-12-31 Avaya Inc. System and method for predicting video transmission quality through a network
JP5718802B2 (ja) * 2011-12-06 2015-05-13 日本電信電話株式会社 品質劣化区間推定システム及び方法
US9736211B2 (en) * 2012-08-27 2017-08-15 Vmware, Inc. Method and system for enabling multi-core processing of VXLAN traffic
US8931046B2 (en) * 2012-10-30 2015-01-06 Stateless Networks, Inc. System and method for securing virtualized networks
US9374323B2 (en) * 2013-07-08 2016-06-21 Futurewei Technologies, Inc. Communication between endpoints in different VXLAN networks
US9264330B2 (en) * 2013-10-13 2016-02-16 Nicira, Inc. Tracing host-originated logical network packets
CN103580953A (zh) * 2013-10-21 2014-02-12 华为技术有限公司 一种故障检测的方法及设备
US9325617B2 (en) * 2013-12-09 2016-04-26 International Business Machines Corporation Overlay capabilities exchange using DCBX
KR102122949B1 (ko) * 2014-01-24 2020-06-16 한국전자통신연구원 네트워크를 통해 연결된 세그먼트들을 관리하는 방법 및 장치
US9894122B2 (en) * 2014-10-16 2018-02-13 Cisco Technology, Inc. Traceroute in virtual extenisble local area networks
CN104601472B (zh) * 2015-02-04 2017-11-03 盛科网络(苏州)有限公司 在芯片中实现vxlan网关分布式路由的方法及报文处理系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1555788A1 (en) * 2004-01-15 2005-07-20 Alcatel Method for improving the quality of an encoded video bit stream transmitted over a wireless link, and corresponding receiver
CN1972219A (zh) * 2005-11-23 2007-05-30 杭州华为三康技术有限公司 网络性能测试方法、系统及网络设备
CN101166122A (zh) * 2006-10-18 2008-04-23 中兴通讯股份有限公司 一种实现通信终端间网络故障的定位方法
CN102546243A (zh) * 2011-12-23 2012-07-04 广东电网公司电力科学研究院 基于SP Guru的电力调度数据网故障仿真分析方法

Also Published As

Publication number Publication date
CN106341333A (zh) 2017-01-18
EP3306877A1 (en) 2018-04-11
JP2018521606A (ja) 2018-08-02
EP3306877B1 (en) 2020-12-30
EP3306877A4 (en) 2018-06-27
CN106341333B (zh) 2019-07-19
JP6514415B2 (ja) 2019-05-15
US10484259B2 (en) 2019-11-19
US20180205623A1 (en) 2018-07-19

Similar Documents

Publication Publication Date Title
WO2017008690A1 (zh) Vxlan中的丢包定位
US11671367B1 (en) Methods and apparatus for improving load balancing in overlay networks
US11108593B2 (en) Methods and systems to offload overlay network packet encapsulation to hardware
US20190124096A1 (en) Channel data encapsulation system and method for use with client-server data channels
US9419897B2 (en) Methods and systems for providing multi-tenancy support for Single Root I/O Virtualization
CN106233673B (zh) 用于网络服务插入的设备和方法
US11005805B2 (en) Managing link aggregation traffic in edge nodes
US9992153B2 (en) Managing link aggregation traffic in edge nodes
CN111092801B (zh) 数据传输方法及装置
US20160315866A1 (en) Service based intelligent packet-in mechanism for openflow switches
JP6574054B2 (ja) パケット転送
US10243849B2 (en) Distributed methodology for peer-to-peer transmission of stateful packet flows
JP6437692B2 (ja) パケット転送
JP2018515053A (ja) パケット転送
US20170070473A1 (en) A switching fabric including a virtual switch
WO2015181664A1 (en) Virtual network data control with network interface card
CN113709016B (zh) 通信系统以及通信方法、装置、设备和存储介质
EP4377794A1 (en) Application-embedded kernel insights for accelerator selection
US9853885B1 (en) Using packet duplication in a packet-switched network to increase reliability

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15743192

Country of ref document: US

ENP Entry into the national phase

Ref document number: 2018520012

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2016823837

Country of ref document: EP