WO2018024063A1 - Data transmission quality detection method and device - Google Patents

Data transmission quality detection method and device Download PDF

Info

Publication number
WO2018024063A1
WO2018024063A1 PCT/CN2017/091280 CN2017091280W WO2018024063A1 WO 2018024063 A1 WO2018024063 A1 WO 2018024063A1 CN 2017091280 W CN2017091280 W CN 2017091280W WO 2018024063 A1 WO2018024063 A1 WO 2018024063A1
Authority
WO
WIPO (PCT)
Prior art keywords
data packet
node
data packets
dyed
data
Prior art date
Application number
PCT/CN2017/091280
Other languages
French (fr)
Chinese (zh)
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 WO2018024063A1 publication Critical patent/WO2018024063A1/en

Links

Images

Classifications

    • 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
    • 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
    • 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/0852Delays

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a data transmission quality detecting method and apparatus.
  • the traditional telecommunication system is composed of various dedicated hardware devices, and different applications use different hardware devices.
  • IT Information Technology
  • cloud computing technology in 2012, telecom operators jointly released network function virtualization (English full name: Network Function Virtualization, referred to as : NFV) White Paper, announcing the establishment of the NFV Industry Standards Organization (English name: Industry Standard Group, ISG) at the European Telecommunications Standards Institute (English name: ETSI) to develop NFV requirements and technical frameworks. Promote the development of NFV.
  • NFV Internet Protocol
  • IP Internet Protocol
  • the virtual network function of the NFV (English name: Virtual Network Function, VNF for short) is the internal virtual machine (English name: Virtual Machine, VM for short).
  • VNF Virtual Network Function
  • VM Virtual Machine
  • Embodiments of the present invention provide a data transmission quality detecting method and apparatus to detect data transmission quality between different VMs in an NFV system.
  • an embodiment of the present invention provides a data transmission quality detection method, which is applied to a network function virtualization NFV system, and the method may include:
  • a plurality of data packets with the same transmission path sent by the first virtual machine VM are dyed, and different nodes on the transmission path detect and count the number of the dyed data packets, and compare the difference of the number of the dyed data packets detected by different nodes. According to the difference, the network quality between different nodes is judged.
  • the quantity determines that there is a packet loss problem between the first node and the second node, wherein the first node may be the first VM, and the second node may be any other node on the transmission path.
  • the difference in the number of dyed packets on different nodes can be compared by dyeing, identifying, and counting the data packets, and whether the packet loss problem occurs between the networks is determined according to the difference.
  • the data packet may be an IP data packet or an Ethernet data packet.
  • coloring the IP data packet may include:
  • the dye flag is filled in the time-to-live TTL field of the IP packet header.
  • the Ethernet packet is dyed and can include:
  • the dye flag is filled in the preset offset field of the Ethernet packet header.
  • the dyeing identifier may be a preset value, and the value may be used to identify the dyed data packet; the preset offset field may be set as needed.
  • the foregoing transmission path may be: a path from the first VM to the second VM through the first virtual switch, a second VM, a first virtual switch, and a One VM is on the same host;
  • the path from the first VM to the second virtual switch to the second virtual switch, and the path from the second virtual switch to the second VM, the first VM and the first virtual switch are located at the first host, the second VM and the second virtual switch Located on the second host.
  • the first VM and the second VM are located in a virtual network function VNF entity in the NFV system; the first virtual switch and the second virtual switch are located in a virtual network of the network function virtualization infrastructure NFVI in the NFV system.
  • the coloring of the multiple data packets sent by the first virtual machine VM may include:
  • the first VM sends data packets in a plurality of consecutive time periods, wherein the data packets sent in the same time period have the same dyeing identifier, and the data packets sent in the adjacent time segments have different dyeing identifiers.
  • the time period can be divided according to the requirements, which is not limited by the embodiment of the present invention.
  • the detection task may include a time period
  • the time when the first VM sends the data packet may be divided into multiple consecutive time segments, and the data packets in each time segment are dyed, so that each node on the transmission path
  • the number of dyed data packets sent in each time period can be counted, and the network quality between different nodes in the time period is determined by comparing the number of dyed data packets between different nodes in each time period.
  • the embodiment of the present invention further provides a data transmission quality detecting method, which is applied to a network function virtualization NFV system, and the method may include:
  • the first data packet of the plurality of data packets with the same transmission path sent by the first virtual machine VM is dyed, and different time nodes on the transmission path detect and count the time stamp of the first color data packet, and compare different node detections.
  • the difference in the time stamp of the first dyed data packet determines the network quality between different nodes according to the difference.
  • the transmission delay is greater than the transmission delay between the third node and the fourth node.
  • the difference between the time stamps of the first dyed data packets on different nodes can be compared by dyeing, identifying, and counting the data packets, and the delay problem between the networks is determined according to the difference.
  • the data packet may be an IP data packet or an Ethernet data packet.
  • the color data packet when the data packet is an IP data packet, the color data packet may be:
  • the dye flag is filled in the time-to-live TTL field of the IP packet header.
  • the Ethernet packet is dyed and can include:
  • the dye flag is filled in the preset offset field of the Ethernet packet header.
  • the first coloring identifier may be a preset value, and the value may be used to identify the first coloring data packet; the preset offset field may be set as needed.
  • the foregoing transmission path may be: a path from the first VM to the second VM through the first virtual switch, a second VM, a first virtual switch, and a One VM is on the same host;
  • the path from the first VM to the second virtual switch to the second virtual switch, and the path from the second virtual switch to the second VM, the first VM and the first virtual switch are located at the first host, the second VM and the second virtual switch Located on the second host.
  • the first VM and the second VM are located in a virtual network function VNF entity in the NFV system; the first virtual switch and the second virtual switch are located in a virtual network of the network function virtualization infrastructure NFVI in the NFV system.
  • the first data packet sent by the first virtual machine VM may be:
  • Data packets sent by the first VM in a plurality of consecutive time periods are dyed, wherein the first data packet sent in the same time period is dyed with the first coloring identifier, and the first data packet sent in the same time period except the first data packet All other data packets are dyed with the second staining identifier, and the first data packet sent in the adjacent time period has different dyeing identifiers.
  • time period may be divided according to requirements, which is not limited by the embodiment of the present invention.
  • the detecting task may include a time period, and the time that the first VM sends the data packet may be divided into multiple consecutive time segments according to the time period in the received detecting task, and the data packet in each time segment is dyed, so that Each node on the transmission path can count the time stamp of the first coloring data packet sent in each time period, and compare the time stamps of the first coloring data packet between different nodes in each time period to determine the time between different nodes in the time segment. Transmission delay problem.
  • the embodiment of the present invention further provides a data transmission quality detecting apparatus, which is configured to execute the foregoing method, and the apparatus may include: a dyeing module, a statistics module, and a comparison determining module.
  • the dyeing module is located in the first virtual machine VM in the network function virtualization NFV system, and the dyeing module is configured to perform dyeing on the plurality of data packets with the same transmission path sent by the first VM;
  • the statistics module is located in different nodes on the transmission path, and the statistics module is configured to detect and count the number of dye packets received by the node where the node is located;
  • a comparison judgment module for comparing differences in the number of dye packets detected by the statistical modules in different nodes, The network quality between different nodes is judged based on the difference.
  • the difference in the number of dyed packets on different nodes can be compared by dyeing, identifying, and counting the data packets, and whether the packet loss problem occurs between the networks is determined according to the difference.
  • the dyeing module is further configured to perform dyeing on the first data packet of the plurality of data packets having the transmission path sent by the first virtual machine VM;
  • the statistics module is further configured to detect and count a time stamp of the first dyed data packet received by the node where the node is located;
  • the comparison judgment module is further configured to compare the difference of the time stamps of the first dyed data packets detected by the statistical modules in different nodes, and determine the network quality between the different nodes according to the difference.
  • the difference between the time stamps of the first dyed data packets on different nodes can be compared by dyeing, identifying, and counting the data packets, and the delay problem between the networks is determined according to the difference.
  • the foregoing data transmission quality detecting apparatus can separately perform the detection of the packet loss problem in the data transmission process, separately perform the detection of the delay problem in the data transmission process, or combine the above schemes, and simultaneously adopt the above The method implements the detection of packet loss and delay.
  • the data transmission quality detecting apparatus described in the third aspect may also be deployed as an independent device in the NFV system, and when the data transmission quality detecting device is used as a separate device, the dyeing module and the statistical module in the device.
  • the comparison judging module may be a separately set processor, or may be integrated in a processor of the data transmission quality detecting device, or may be stored in a memory of the data transmission quality detecting device in the form of program code.
  • the function of the above dyeing module, the statistical module, and the comparison judging module is called and executed by one of the processors of the data transmission quality detecting device.
  • the processor described herein may be a central processing unit (English name: Central Processing Unit, CPU for short), or a specific integrated circuit (English name: Application Specific Integrated Circuit, ASIC for short), or configured to implement One or more integrated circuits of embodiments of the present application.
  • the embodiment of the present invention provides a data transmission quality detecting method and apparatus, which dyes multiple data packets with the same transmission path sent by the first virtual machine VM, and detects and statistically dyes at different nodes on the transmission path.
  • the number of packets compares the difference in the number of dyed packets detected by different nodes, and judges the network quality between different nodes according to the difference.
  • the difference in the number of data packets sent between different nodes can be compared by dyeing, identifying, and counting the data packets, and then the packet loss problem between the nodes can be determined according to the difference, so that corresponding measures can be taken to restore the entire service.
  • FIG. 1 is a schematic diagram of an NFV system architecture
  • FIG. 2 is a flowchart of a method for detecting data transmission quality according to an embodiment of the present invention
  • FIG. 3 is a schematic diagram of several data transmissions according to an embodiment of the present invention.
  • FIG. 4 is a flowchart of a method for detecting data transmission quality according to an embodiment of the present invention.
  • FIG. 5 is a structural diagram of a data transmission quality detecting apparatus according to an embodiment of the present invention.
  • 5A is a structural diagram of an NFV system including a data transmission quality detecting apparatus according to an embodiment of the present invention
  • FIG. 6 is a flowchart of a method for detecting data transmission quality according to an embodiment of the present invention.
  • association relationship describing an association object, indicating that there may be three relationships, for example, A and/or B, which may indicate that A exists separately, and A exists at the same time. And B, there are three cases of B alone.
  • the character "/" in this article generally indicates that the contextual object is an "or" relationship.
  • FIG. 1 is a schematic diagram of an NFV system architecture.
  • the NFV system 10 may include: NFV management and orchestration device (English name: NFV Management and Orchestration, referred to as: NFV MANO) 101, NFV infrastructure layer (English full name) : NFV Infrastructure, referred to as: NFVI) 102, multiple virtual network functions (English full name: Virtual Network Function, referred to as: VNF) 103, multiple network element management (English full name: Element Management, referred to as: EM) 104, network services, VNF and Infrastructure Description (VNF and Infrastructure Description) 105, and Business Support Management Device (English name: Operation-Support System/Business Support System, abbreviated as OSS/BSS) 106.
  • NFV MANO NFV management and Orchestration
  • NFV infrastructure layer English full name
  • NFV Infrastructure referred to as: NFVI
  • VNF Virtual Network Function
  • EM multiple network element management
  • network services VNF and Infrastructure Description
  • NFV-MANO101 can include: NFV orchestrator (English full name: NFV Orchestrator, referred to as: NFVO) 1011, one or more VNF managers (English full name: VNF Manager, referred to as: VNFM) 1012, and virtualization infrastructure management (English name: Virtualized Infrastructure Manager, referred to as: VIM) 1013; NFV MANO101 is mainly used to monitor and manage VNF103 and NFVI102; NFVO1011 in NFV MANO101 is mainly used to receive resource related requests from one or more VNFM1012, and Send configuration information to VNFM1012 to collect status information of VNF103.
  • NFV orchestrator English full name: NFV Orchestrator, referred to as: NFVO
  • VNFM Virtualized Infrastructure Manager
  • VIM Virtualized Infrastructure Manager
  • NFVO1011 is also used to communicate with VIM1013 to implement resource allocation and/or reservation and exchange configuration and status information of virtualized hardware resources.
  • VNFM1012 is mainly used to manage one. Or multiple VNFs 103, such as: instantiate, update, query, scale, and/or terminate VNF103, etc.; VIM1013 mainly performs resource management functions, such as managing the allocation of infrastructure resources (such as adding resources to virtual containers) and operating functions (such as Collect NFVI failure information).
  • the NFVI 102 can include computing hardware 1021, storage hardware 1022, network hardware 1023, virtualization layer, virtual computing 1024, virtual storage 1025, and virtual network 1026.
  • the virtualization layer in NFVI 102 can abstract hardware resources from the physical layer and decouple VNF 103 to provide virtualized resources to VNF 103.
  • Virtual computing 1024 and virtual storage 1025 can be provided to VNF 103 in the form of virtual machines, and/or other virtual containers.
  • one or more VNFs 103 can be deployed in a virtual machine (English full name: Virtual Machine, Abbreviation: VM).
  • the virtualization layer abstracts network hardware 1023 to form a virtual network 1026, which may include a virtual switch that can be used to provide connection communication between VMs on the VNF 103 and other VMs.
  • the communication traffic between VMs is merged with the external traffic channel, the hardware resource layer traffic is shared by all virtual machines, and the network hardware (such as network card and other hardware) is also shared.
  • the network hardware such as network card and other hardware
  • the probability of IP packet loss, jitter, delay, etc. affecting the quality of data transmission increases.
  • quality detection of data transmission between VMs is required to quickly The location of the demarcation problem occurs so that appropriate measures (such as VM migration, reconstruction, etc.) can be taken to quickly restore the business.
  • the embodiment of the present invention is based on the NFV system shown in FIG. 1, and the data packet in the service flow is dyed at the originating node of the service flow.
  • the service flow flows through each node according to the transmission path, each node pair
  • the dyeing data packet is identified and counted, and the data and time stamp of the dyed data packet are obtained, and then the change of each node of the transmission path can be timely marked according to the number of dyed data packets, and the packet loss situation between different nodes is determined. And the transmission delay, and the location of the problem is delimited according to the judgment result.
  • embodiment 1 shows and describes in detail the data transmission quality detecting method provided by the present invention, wherein the steps shown may also be in addition to the NFV system, such as a set of executable instructions. Executed in a computer device. Moreover, although logical sequences are shown in the figures, in some cases the steps shown or described may be performed in a different order than the ones described herein.
  • FIG. 2 is a flowchart of a method for detecting data transmission quality according to an embodiment of the present invention.
  • the method is applicable to an NFV system as shown in FIG. 1 for detecting data transmission quality between different VMs in an NFV system; As shown in FIG. 2, the method may include the following steps:
  • S101 Sampling a plurality of data packets sent by the first virtual machine VM, the multiple data packets having the same transmission path.
  • the first VM may be any VM in the VNF under the NFV system, and is an originating node that sends multiple data packets.
  • the data packet may be an IP data packet, or may be a private Layer 2 data packet, such as an Ethernet data packet, which is not limited in this embodiment of the present invention.
  • the multiple data packets may be included in the same service flow, and the service flow is a service flow with a quality problem, a quality check to be performed, or a service flow specified for the user.
  • the quality condition of the multiple service flows sent by the first VM may be detected, and if the quality problem of the first service flow is found, the multiple data in the first service flow sent by the first VM may be Packing for dyeing;
  • the quintuple information may include: a source IP address, a destination IP address, a protocol type, a source port number, and a destination port number of the service flow.
  • a service flow has a specific transmission path along which data packets in the service flow are transmitted.
  • the transmission path may be: a path from the first VM through the first virtual switch to the second VM, where the second VM, the first virtual switch, and the first VM may be in the same host;
  • the path may be a path from the first VM to the second virtual switch, and then from the second virtual switch to the second VM, where the first VM and the first virtual switch are located in the first host, and the second VM and the second
  • the second virtual switch may be located in the second host, and the first host and the second host may be in the same VNF or in different VNFs;
  • the second VM may also be located in the VNF of the NFV system; the first virtual switch and the second virtual switch It can be located in a virtual network in the NFVI of the NFV system.
  • FIG. 3 is a schematic diagram of several data transmissions provided by an embodiment of the present invention.
  • a VM 1 in the host 1 can transmit multiple data packets to the host 1 through a virtual switch in the host 1 .
  • VM2 as shown in Figure 3(b), host 1 and host 2 are in the same VNF network.
  • VM1 in host 1 can transmit the data packet to virtual in host 2 through virtual switch 1 in host 1.
  • Switch 2, virtual switch 2 then transmits the data packet to VM2 in host 2; as shown in Figure 3 (c), host 1 and host 2 are in different VNF networks.
  • VM1 in host 1 can pass through host 1
  • the virtual switch 1 inside transfers the data packet to the virtual switch 2 in the host 2, and the virtual switch 2 transmits the data packet to the VM2 in the host 2.
  • the transmission path between two VMs may also be set by referring to the foregoing manner, that is, the VMs in the same host pass through the virtual in the host.
  • the switch transmits data packets, and the VMs in different hosts transmit data packets through the virtual switches in the respective hosts, and details are not described herein.
  • the dyeing bits are different for different types of data packets.
  • the dyeing identifier may be filled in the time of the IP data packet header (Time To Live, TTL for short), the dyeing identifier Used to identify the IP packets that are being dyed.
  • a dyeing identifier can be filled in the preset offset field of the Ethernet data packet header, and the dyeing identifier is used to identify the dyed Ethernet data packet.
  • the coloring identifier may be a value that is set in advance, and the value may be used to identify the coloring data packet; the embodiment of the present invention does not limit this.
  • the TTL field in the IP packet is a standard field defined by the protocol, the field is given a larger value (such as 255) when the IP packet is sent, and then the IP.
  • the TTL value is decremented by 1.
  • the IP packet will be discarded. Therefore, in the case of no dyeing, the TTL value of the originating node IP packet is 255, assuming After the virtual switch is passed N times in the middle of the transmission path, the destination node receives the IP packet with a TTL value of 255-N.
  • the TTL value ranges from 255 to 255-N on the transmission path, so when starting After the task is detected, the TTL value of the IP data packet can be set to less than 255-N at the originating node, that is, the value of the dye flag is set to (255-N), and the IP data packet can be distinguished as the dye data packet.
  • the preset offset field can be set as needed, which is not limited in this embodiment of the present invention.
  • the offset field may be pre-determined before step S101 to dye the Ethernet data packet according to the offset field in step S101. For example, if an offset field of 8 bits is specified in advance, when the Ethernet packet is colored, the dye flag is filled at a position shifted by 8 bits from the Ethernet packet header.
  • S102 Detect and count the number of the dyed data packets in different nodes on the transmission path, where the dyed data packets are the data packets that are stained in the plurality of data packets.
  • the different nodes on the transmission path may include: a VM, a virtual switch, and the like on the transmission path.
  • the dye bits of the padding identifier may be notified to each node on the transmission path in advance, and the dye bit may be a TTL field or a preset offset field as described in step S101;
  • Each node may identify the dyed bits of each received data packet according to the notification. If the dyed bit is filled with the dyed mark, the data packet is determined to be a dyed data packet, and the number of the dyed data packets is counted. Otherwise, Then it is determined that the data packet is not dyed. For example, if a node on the transmission path receives a packet, it detects 90 numbers. According to the dyeing mark filled in the dyeing position of the package, it is determined that 90 dyeing packets are received.
  • S103 Compare differences in the number of dyed data packets detected by different nodes, and determine network quality between different nodes according to the difference.
  • the first VM is used as the first node, and any other node on the transmission path is used as the second node. At this time, if the number of the dyed data packets detected by the first node is greater than the dyed data detected by the second node. The number of packets determines that there is a packet loss problem between the first node and the second node.
  • the dye data packet detected by each node is as shown in Table 1 below, and the number of dyed IP data packets detected at point P1 is 100, and the number of dyed IP data packets is detected at point P2.
  • the number of dyed IP packets is 90, which means that 10 IP packets are lost between P2 and P3, indicating that there is IP packet loss in the network between P2 and P3.
  • the data packets sent by the VM are sequential, and it is difficult for each node to delimit the start time and the final occurrence time of the data packet, which is prone to the problem of statistical errors in the coloring data packet. Therefore, in the embodiment of the present invention, in order to avoid statistical errors of each node on the transmission path, in a feasible solution of the present invention, the data packets sent by the VM may be divided according to a preset time period, and the data packets in each time period are performed. Dyeing, detection and statistics, the specific implementation is as follows:
  • the step S101, the dyeing the multiple data packets sent by the first virtual machine VM may specifically include:
  • the data packets sent by the first VM in multiple consecutive time segments are dyed, the dyeing identifiers of the data packets sent in the same time period are the same, and the dyeing identifiers of the data packets sent in the adjacent time segments are different.
  • the time period can be divided according to the requirements, which is not limited by the embodiment of the present invention.
  • a detection task for indicating that the multiple data packets sent by the first virtual machine VM are to be dyed may be received, where the detection task may include time And segmenting, according to the time period of the received detection task, dividing the time when the first VM sends the data packet into multiple consecutive time segments, and dyeing the data packets in each time segment to make each node on the transmission path.
  • the number of dyed data packets in each time period is counted, and the difference in the number of dyed data packets between different nodes in the same time period is compared, and the network quality between different nodes in the time period is determined according to the difference.
  • the TTL field of the IP packet header sent by VM1 within 10 seconds of the first time period may be filled with 249, and within 10 seconds of the second time period, E-mail packet header The TTL field is padded with 248.
  • the TTL field of the outgoing IP packet header is filled with 249, and within 10 seconds of the fourth period, the TTL of the IP packet header will be sent.
  • the field is filled with 248 and the subsequent time period is looped in this way.
  • the data packets sent by the VM can be divided into time intervals, and the data packets sent by the VM in each time period are dyed, so that each node on the transmission path counts the number of dyed data packets in each time period. And compare the difference in the number of dyed packets between different nodes in the same time period, and judge the quality problem of the network between nodes according to the difference of the number of dyed packets between different nodes in the time period.
  • the embodiment of the present invention provides a data transmission quality detecting method, which dyes multiple data packets with the same transmission path sent by the first virtual machine VM, and detects and counts the dyed data packets at different nodes on the transmission path.
  • the number of differences is compared with the number of dyed packets detected by different nodes, and the network quality between different nodes is judged according to the difference.
  • the difference in the number of data packets sent between different nodes can be compared by dyeing, identifying, and counting the data packets, and then the packet loss problem between the nodes can be determined according to the difference, so that corresponding measures can be taken to restore the entire service.
  • the first embodiment only implements the detection of the packet loss problem during data transmission between VMs.
  • the second embodiment describes the detection scheme of the delay problem during data transmission between VMs.
  • FIG. 4 is a flowchart of a method for detecting data transmission quality according to an embodiment of the present invention.
  • the method is applicable to an NFV system as shown in FIG. 1 for detecting data transmission quality between different VMs in an NFV system.
  • the method may include the following steps:
  • the first VM may be any VM in the VNF under the NFV system, and is an originating node that sends the first data packet.
  • the first data packet may be an IP data packet, or may be a private Layer 2 data packet, such as an Ethernet data packet, which is not limited in this embodiment of the present invention.
  • the first data packet may be any data packet in a service flow, and the service flow is a service flow delay problem, a service flow to be quality-detected, or a service flow specified for the user, and may include a large amount of data. package.
  • the quality of the multiple service flows sent by the first VM may be detected. If the quality of the first service flow is found, the first data in the first service flow sent by the first VM is detected.
  • the package is subjected to dye detection;
  • the quintuple information sent by the user is received, and the first data packet in the first service flow sent by the first VM is dyed according to the received quintuple information, wherein the quintuple information is
  • the quintuple information may include: a source IP address, a destination IP address, a protocol type, a source port number, and a destination port number of the service flow.
  • a service flow has a specific transmission path along which data packets in the service flow are transmitted.
  • the transmission path may be: a path from the first VM through the first virtual switch to the second VM, where the second VM, the first virtual switch, and the first VM may be in the same host;
  • the path may be a path from the first VM to the second virtual switch, and then from the second virtual switch to the second VM, where the first VM and the first virtual switch are located in the first host, and the second VM and the second
  • the second virtual switch may be located in the second host, and the first host and the second host may be in the same VNF or in different VNFs;
  • the second VM may also be located in the VNF of the NFV system; the first virtual switch and the second virtual switch It can be located in a virtual network in the NFVI of the NFV system.
  • the transmission path between two VMs may also be set by referring to the foregoing manner, that is, the VMs in the same host pass through the virtual in the host.
  • the switch transmits data packets, and the VMs in different hosts transmit data packets through the virtual switches in the respective hosts, and details are not described herein.
  • the dyeing bits are different for different types of data packets.
  • the first coloring identifier may be filled in a field of an IP data packet header (Time To Live, TTL for short). The first coloring identifier is used to identify the first data packet.
  • the first coloring identifier may be filled in a preset offset field of the Ethernet data packet header, and the dyeing identifier is used to identify the first data. package.
  • the coloring identifier may be a value that is set in advance, and the value may identify the first coloring data packet, which is not limited by the embodiment of the present invention.
  • the TTL field in the IP packet is a standard field defined by the protocol, the field is given a larger value (such as 255) when the IP packet is sent, and then the IP.
  • the TTL value is decremented by 1.
  • the IP packet will be discarded. Therefore, in the case of no dyeing, the TTL value of the originating node IP packet is 255, assuming After the virtual switch is passed N times in the middle of the transmission path, the destination node receives the IP packet with a TTL value of 255-N.
  • the TTL value ranges from 255 to 255-N on the transmission path, so when starting After the task is detected, the TTL value of the IP data packet can be set to less than 255-N at the originating node, that is, the value of the dye flag is set to (255-N), and the IP data packet can be distinguished as the dye data packet.
  • the preset offset field can be set as needed, which is not limited in this embodiment of the present invention.
  • the offset field may be pre-determined before step S201 to dye the Ethernet data packet according to the offset field in step S201.
  • only the first data packet sent by the first VM may be dyed, and other data packets may be used in order to facilitate the subsequent node to distinguish the first data packet from the large number of data packets.
  • the dyeing process may be performed on a plurality of data packets including the first data packet without performing the dyeing process, except that the dyeing identifier of the first data packet is different from the dyeing identifier of the other data packets, and the first data packet is not included.
  • the dyeing identifier of the data packet can be identical.
  • S202 The time stamp of the first coloring data packet is detected and counted by different nodes on the transmission path, and the first coloring data packet is the first data packet that is stained.
  • the different nodes on the transmission path may include: a VM, a virtual switch, and the like on the transmission path.
  • the dyeing bit of the padding identifier may be notified to each node on the transmission path in advance, and the dye bit may be a TTL field or a preset offset field as described in step S201;
  • Each node may identify the dyed bits of each received data packet according to the notification. If the dyeing bit of a certain data packet is filled with a dyed identifier for identifying the first data packet, the data packet is determined to be the first A stained packet and the time stamp of the first stained packet is counted.
  • S203 Compare differences in time stamps of the first dyed data packets detected by different nodes, and determine network quality between different nodes according to the differences.
  • the difference between the time stamps of the first dyed data packet detected between the first node and the second node is greater than the third section Determining, by the difference between the time stamp of the first dyed data packet and the fourth node, the transmission delay between the first node and the second node is greater than the third node and the fourth Transmission delay between nodes.
  • the time stamp of the first coloring data packet detected by each node is as shown in Table 2, and the time stamp of the first coloring data packet detected by the point P1 is T1, P2.
  • the time stamp of the first dyed data packet is detected as T2
  • the time stamp of the first dyed data packet is detected as T3 at the point P3
  • the time stamp of the first dyed data packet is detected as T4 at the point P4, and at this time, if T3- If the time difference of T2 is greater than the time difference of T2-T1, it is determined that there is a transmission delay problem between P2 and P3. According to the judgment result, the maintenance personnel can quickly locate the problem and take necessary measures to prevent business damage.
  • the difference between the time stamps of the data packets between the nodes on the transmission path between the VMs can be determined by dyeing the data packets, and the delay time of the network between the nodes is determined, and the location of the fast delimitation problem is prevented to prevent business damage. .
  • the coloring the first data packet of the plurality of data packets sent by the first virtual machine VM may include:
  • Data packets sent by the first VM in a plurality of consecutive time periods are dyed, wherein the first data packet sent in the same time period is dyed with the first coloring identifier, and the first data packet sent in the same time period except the first data packet All other data packets are dyed with the second staining identifier, and the first data packet sent in the adjacent time period has different dyeing identifiers.
  • the first data packet may be the first data packet sent in each time period.
  • the foregoing time period may be divided according to requirements, which is not limited by the embodiment of the present invention; and the second dyeing identifiers used in the adjacent time periods may be the same or different, and the embodiment of the present invention Nor is it limited.
  • a detection task for indicating that the multiple data packets sent by the first VM are to be dyed may be received.
  • the detecting task may include a time period, and may further divide the time when the first VM sends the data packet into multiple consecutive time segments according to the time period in the received detecting task, and dye the data packet in each time segment. Having each node on the transmission path count the time stamp of the first coloring data packet in each time period, and compare the difference of the first coloring data packet time stamp between different nodes in the same time period, and determine different time periods according to the difference. Network quality between nodes.
  • the TTL field of the first IP packet header sent by VM1 within 10 seconds of the first time period can be filled with 247, and 10 seconds in the second time period.
  • the TTL field of the first IP packet header to be sent is filled with 246, and within 10 seconds of the third time period, the TTL field of the first IP packet header to be sent is filled with 247, in the fourth Within 10 seconds of the cycle, the TTL field of the first IP packet header to be sent is filled with 246, and the subsequent time period is cyclically set in this manner.
  • the data packets sent by the VM can be divided into time intervals, and the VM is sent in each time period.
  • the first data packet is dyed, and each node on the transmission path counts the time stamp of the first coloring data packet in each time period, and compares the difference of the first coloring data packet time stamp between different nodes in the same time period.
  • the delay time of the network between nodes is determined according to the difference of the first coloring packet time stamp between different nodes in any time period.
  • the embodiment of the present invention provides a data transmission quality detecting method, which performs coloring on a first data packet of multiple data packets with the same transmission path sent by the first virtual machine VM, and detects different nodes on the transmission path.
  • the number of the first dyed data packets is counted, and the difference of the time stamps of the first dyed data packets detected by different nodes is compared, and the network quality between different nodes is judged according to the difference.
  • the difference between the time stamps of the data packets sent between different nodes can be compared by dyeing, identifying and counting the data packets, and then the delay between the nodes can be determined according to the difference, so that corresponding measures can be taken to restore the entire service.
  • the first embodiment and the second embodiment respectively implement the detection of the packet loss and the delay in the network. It can be understood that, in another feasible solution of the embodiment of the present invention, the first embodiment and the second embodiment can be used.
  • the invention combines the detection of network packet loss and delay, and the present invention will not be described in detail herein.
  • the first data packet of the first data packet sent by the first VM may be firstly dyed, and the other data packets may be secondly colored, and each node on the transmission path may detect and count the number of all the dyed data packets. And the timestamp of the first dyed packet, comparing the difference between the number of dyed packets between different nodes, and the difference of the first packetized timestamp, based on these two differences to determine the difference between the different nodes Loss and delay issues.
  • the sent data packet is divided according to a preset time period, and the data packet sent by the first VM in multiple consecutive time periods is dyed, wherein the first data packet sent in the same time period is dyed by the first dyeing identifier, and is sent in the same time period.
  • All the data packets except the first data packet are dyed with the second dyeing identifier, and the first dyeing identifier used in the adjacent time period is different, and the second dyeing identifier used in the adjacent time period may be the same or different.
  • the first dyeing identifier is different from the second dyeing identifier, so that the first coloring data packet in each time period and all the coloring data packets can be identified, according to the time stamp of the first coloring data packet, and the coloring data packet. The number simultaneously detects two problems of network delay and packet loss.
  • the TTL field of the first IP packet header sent by VM1 within 10 seconds of the first time period may be filled with 247, and the TTL field of the remaining IP data packet header is filled. 249, in the 10 seconds of the second time period, the TTL field of the first IP packet header is filled with 246, and the TTL field of the remaining IP packet header is filled with 248, in the third time period.
  • the TTL field of the first IP packet header to be sent is filled with 247
  • the TTL field of the remaining IP packet header is filled with 249
  • the first IP will be sent within 10 seconds of the fourth period.
  • the TTL field of the packet header is filled with 246, and the TTL field of the remaining IP packet header is filled with 248, and the subsequent time period is cyclically set in this manner.
  • the following embodiments further provide a data transmission quality detecting apparatus 30, which is preferably used to perform the data transmission quality detecting method according to the first embodiment and the second embodiment.
  • FIG. 5 is a structural diagram of a data transmission quality detecting apparatus 30 according to an embodiment of the present invention.
  • the apparatus 30 may include: a coloring module 301, a statistics module 302, and a comparison determining module 303.
  • the data transmission quality detecting apparatus 30 shown in FIG. 5 may be separately deployed in the NFV system, or each module of the data transmission quality detecting apparatus may be dispersed in each functional component of the NFV system, as shown in FIG. 5A.
  • the schematic diagram of the NFV system architecture of the transmission quality detecting device 30 is as shown in FIG. 5:
  • the coloring module 301 is deployed in each VM in the NFV system VNF entity, and the statistics module 302 is deployed in each node on the data transmission path (eg, in each VM in the VNF entity, in the virtual switch of the virtual network)
  • the comparison judging module 303 can be deployed in the NFV system as a separate virtual machine VM, and can be deployed as a functional component in the VNFM or EM of the NFV system. It should be noted that, for convenience of description, the comparison judging module 303 is deployed in the VNFM. The inside is explained as an example.
  • the staining module 301 performs a staining function within the VM from which the data originated.
  • the dyeing module 301 is configured to perform staining on multiple data packets sent by the first VM, where the multiple data packets have the same transmission path.
  • the statistics module 302 is configured to detect and count the number of dyed data packets on the node where the data is located, and the stained data packet is the data packet that is stained in the plurality of data packets.
  • the comparison judging module 303 is configured to compare differences in the number of dyed data packets detected by the statistical module 302 in different nodes, and determine network quality between different nodes according to the difference.
  • the coloring module 301 may be specifically configured to:
  • the coloring identifier is filled in the TTL field of the IP packet header, and the coloring identifier is used to identify the dyed IP packet.
  • the coloring module 301 is specifically configured to:
  • a dyed identifier is filled in the preset offset field of the Ethernet packet header, and the dyed identifier is used to identify the stained Ethernet packet.
  • the comparison determining module 303 is specifically configured to:
  • the second node can be any other node on the transmission path.
  • the comparison judgment module 303 cannot be directly communicated. Therefore, the virtual switch needs to collect the self-sampling dye data packet through the VIM in the NFV system. The quantity is forwarded to the comparison determination module 303.
  • the data transmission quality detecting apparatus may further include a data forwarding module 304.
  • the data forwarding module 304 can be deployed in the VIM as shown in FIG. 5A.
  • the data forwarding module 304 is configured to receive the number of the dyed data packets counted by the virtual switch, and forward the received number of the dyed data packets to the comparison determining module 303.
  • the dyeing module 301 can be specifically used to:
  • the data packets sent by the first VM in a plurality of consecutive time segments are dyed, wherein the data packets sent in the same time period have the same dyeing identifier, and the data packets sent in the adjacent time segments have different dyeing identifiers.
  • the difference in the number of data packets sent between different nodes can be compared by dyeing, identifying, and counting the data packets, and then the packet loss problem between the nodes can be determined according to the difference, so that corresponding measures can be taken to restore the entire service.
  • the apparatus provided in FIG. 5 can also be used to implement detection of a transmission delay problem between nodes, and the specific implementation is as follows:
  • the dyeing module 301 is further configured to perform staining on the first data packet of the plurality of data packets sent by the first virtual machine VM, where the plurality of data packets have the same transmission path.
  • the statistics module 302 is further configured to detect and count the time stamp of the first coloring data packet received by the node where the node is located, and the first coloring data packet is the first data packet that is dyed.
  • the comparison judging module 303 is further configured to compare the difference of the time stamps of the first dyed data packets detected by the statistics module 302 in different nodes, and determine the network quality between the different nodes according to the difference.
  • the dyeing module 301 can be used to: when the first data packet is an IP data packet, the
  • the first coloring identifier is filled in the time-to-live TTL field of the IP packet header, and the first coloring identifier is used to identify the first data packet.
  • the coloring module 301 can be specifically used to:
  • the first coloring identifier is used to identify the first data packet.
  • the comparison determining module 303 is specifically configured to:
  • the transmission delay between the node and the second node is greater than the transmission delay between the third node and the fourth node.
  • the dyeing module 301 can be specifically configured to:
  • Data packets sent by the first VM in a plurality of consecutive time periods are dyed, wherein the first data packet sent in the same time period is dyed with the first coloring identifier, and the first data packet sent in the same time period except the first data packet All other data packets are dyed by the second coloring identifier, and the dyeing identifiers of the first data packets sent in the adjacent time segments are different, and the dyeing identifiers of all the data packets sent by the adjacent time segments except the first data packet are different.
  • the difference between the time stamps of the data packets sent between different nodes can be compared by dyeing, identifying and counting the data packets, and then the delay between the nodes can be determined according to the difference, so that corresponding measures can be taken to restore the entire service.
  • the detection process shown in FIG. 5 is used to detect the transmission quality of the first service flow from the VM1 through the virtual switch 1 to the VM2, and the execution process of each module (shown in FIG. 6) is specifically described.
  • the comparison judgment module 303 starts the detection task, and sends the detection task to the VM1, the virtual switch, and the VM2.
  • the detecting task is used to instruct each node device to perform data transmission quality detection, and the detecting task includes: quintuple information of the first service flow, and a time period.
  • the comparison determination module 303 sends the detection task to the node.
  • the node is a virtual switch, as shown in step S1.1 in FIG. 6, the comparison determination module 303 sends the detection task.
  • the data forwarding module 304 forwards the detection task to the virtual switch.
  • the dyeing module 301 in the VM1 After receiving the detection task, the dyeing module 301 in the VM1 periodically dyes the data packet in the first service flow sent according to the time period.
  • the dyeing identifier when the data packet is an IP data packet, the dyeing identifier is filled in its TTL field; when the data packet is an Ethernet data packet, the dyeing identifier is filled in its preset offset field.
  • the first data packet in each period may be subjected to a first coloring
  • the other data packets may be subjected to a second coloring
  • the dyeing identifier of the first data packet is different from other dyeing identifiers in the time period.
  • the dyeing identifier of the first data packet between adjacent time segments is different, and the dyeing periods of other data packets between adjacent time segments are also different.
  • the statistics module 302 in VM1 detects and counts the number of dye packets sent by VM1 in each time period, and the time stamp of the first dyed data packet.
  • the first dyed data packet is the first data packet to be dyed in each cycle.
  • the statistics module 302 in the VM2 detects and counts the number of the dyed data packets sent by the virtual switch in each time period and the time stamp of the first coloring data packet.
  • the statistics module 302 in the virtual switch After receiving the detection task, the statistics module 302 in the virtual switch detects and counts the number of dye packets sent by VM1 in each time period and the time stamp of the first dyed data packet.
  • the comparison judgment module 303 acquires a request message of the statistical data to each node.
  • the request message is used to request the number of the dyed data packets acquired by each node and the first coloring data packet time stamp.
  • the comparison determining module 303 sends a request message to the data forwarding module 304, and the data forwarding module 304 forwards the request message to the virtual switch.
  • the statistic module 302 of the VM1 After receiving the request message, the statistic module 302 of the VM1 sends the number of the swatched data packets and the first smeared data packet timestamp to the comparison judgment module 303.
  • the statistics module 302 in the virtual switch After receiving the request message, the statistics module 302 in the virtual switch sends the number of the dyed data packets and the first coloring data packet time stamp of the statistics to the data forwarding module 304, and the data forwarding module 304 sends the coloring data packet to the comparison determining module 303. The number and time stamp of the first stained packet.
  • the comparison judgment module 303 cannot directly communicate with each other, in the embodiment of the present invention, the statistics module 302 in the virtual switch needs to pass through the NFV system.
  • the VIM communicates with the comparison determination module 303.
  • the statistics module 302 in the virtual switch may send the statistics of the number of the dyed data packets and the first coloring data packet to the comparison judgment module 303 through the data forwarding module 304 in the VIM.
  • the statistic module 302 in the VM2 After receiving the request message, the statistic module 302 in the VM2 sends the number of the swatched data packets and the first smeared data packet timestamp to the comparison judgment module 303.
  • the comparison judging module 303 compares the difference between the number of dyed data packets counted between different nodes and the time stamp of the first dyed data packet, and determines the packet loss and delay of the inter-node network.
  • the comparison determining module 303 can compare the difference in the number of the dyed data packets between different nodes, and determine, according to the difference, the packet loss problem occurs in the network between the nodes;
  • the comparison judging module 303 transmits a notification message of stopping detection to each node.
  • the node is a virtual switch, as shown in step S11.1 in FIG. 6, the comparison determining module 303 sends a notification message that stops detecting to the data forwarding module 304, and the data forwarding module 304 sends the notification message to the Virtual switch.
  • the notification message is used to notify each node to stop the detection of the data transmission quality.
  • the process shown in FIG. 6 only describes the detection of data transmitted between VM1 and VM2.
  • the transmission path may exist through more than two VMs and multiple virtual switches.
  • the specific processing of each module in the data transmission detecting device and the process shown in FIG. Similar, it will not be described in detail here.
  • the embodiment of the present invention provides a data transmission quality detecting apparatus, which performs different coloring on a plurality of data packets and a first data packet having the same transmission path sent by the first virtual machine VM, and different in the transmission path.
  • the node detects and counts the number of all dyed data packets and the time stamp of the first dyed data packet, compares the number of dyed data packets detected by different nodes, and the difference of the timestamp of the first colored data packet, and judges the loss between different nodes according to the difference.
  • the packet loss delay between the nodes can be determined according to the difference, so that corresponding measures can be taken to recover.
  • the entire business by comparing the data packet, the identification and the statistics, the difference between the number of data packets sent by different nodes and the time stamp can be compared, and then the packet loss delay between the nodes can be determined according to the difference, so that corresponding measures can be taken to recover.
  • the entire business by comparing the data packet, the identification and the statistics, the difference between the number of data packets sent by different nodes and the time stamp can be compared, and then the packet loss delay between the nodes can be determined according to the difference, so that corresponding measures can be taken to recover. The entire business.
  • the disclosed apparatus, apparatus, and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or It can be integrated into another device, or some features can be ignored or not executed.
  • 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 purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may be physically separate, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of hardware plus software functional units.
  • the above-described integrated unit implemented in the form of a software functional unit can be stored in a computer readable storage medium.
  • the software functional units described above are stored in a storage medium and include instructions for causing a computer device (which may be a personal computer, server, or network device, etc.) to perform portions of the steps of 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, and the program code can be stored. Medium.
  • the storage medium may include a read only memory, a random access memory, a magnetic disk or an optical disk, or the like.

Abstract

The present invention relates to the technical field of communications; provided are a data transmission quality detection method and device, used to detect data transmission quality between different virtual machines (VM) in an NFV system. The method comprises: staining a plurality of packets having a same transmission path sent by a first VM, detecting and counting the number of stained packets at different nodes on the transmission path, comparing the numbers of stained packets detected at the different nodes to obtain differences, and determining the network quality between the different nodes according to the differences.

Description

一种数据传输质量检测方法及装置Data transmission quality detecting method and device
本申请要求于2016年8月4日提交中国专利局、申请号为201610634978.2、发明名称为“一种数据传输质量检测方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims priority to Chinese Patent Application No. 201610634978.2, entitled "A Data Transmission Quality Detection Method and Apparatus", filed on August 4, 2016, the entire contents of which are incorporated herein by reference. In the application.
技术领域Technical field
本发明涉及通信技术领域,尤其涉及一种数据传输质量检测方法及装置。The present invention relates to the field of communications technologies, and in particular, to a data transmission quality detecting method and apparatus.
背景技术Background technique
传统的电信系统通过各种专用的硬件设备组成,不同的应用采用不同的硬件设备。随着网络规模的增长,系统越来越复杂,带来了诸多的挑战,包括新增业务的开发上线、系统的运维、资源利用率等。为了应对这些挑战及利用信息技术(英文全称:Information Technology,简称:IT)业界的虚拟化技术及云计算技术,2012年电信运营商联合发布了网络功能虚拟化(英文全称:Network Function Virtualization,简称:NFV)白皮书,宣布在欧洲电信标准协会(英文全称:European Telecommunications Standards Institute,简称:ETSI)成立NFV行业标准组织(英文全称:Industry Standard Group,简称:ISG),制定NFV的需求及技术框架,推动NFV的发展。The traditional telecommunication system is composed of various dedicated hardware devices, and different applications use different hardware devices. As the scale of the network grows, the system becomes more and more complex, which brings many challenges, including the development of new services, the operation and maintenance of the system, and resource utilization. In response to these challenges and the use of information technology (English full name: Information Technology, referred to as: IT) industry virtualization technology and cloud computing technology, in 2012, telecom operators jointly released network function virtualization (English full name: Network Function Virtualization, referred to as : NFV) White Paper, announcing the establishment of the NFV Industry Standards Organization (English name: Industry Standard Group, ISG) at the European Telecommunications Standards Institute (English name: ETSI) to develop NFV requirements and technical frameworks. Promote the development of NFV.
电信设备NFV后,大量的虚拟机通过云平台因特网协议(英文全称:Internet Protocol,简称:IP)网络互联,共同配合提供电信业务。与传统电信设备不同的是,电信设备NFV后,网络变得复杂,NFV中虚拟网络功能(英文全称:Virtual Network Function,简称:VNF)内部虚拟机(英文全称:Virtual Machine,简称:VM)间的通讯流量与外部的业务流量通道合并,IP类丢包、抖动、时延等影响网络通信质量的问题发生概率增加。After the NFV of the telecom equipment, a large number of virtual machines are interconnected through the Internet Protocol of the Cloud Platform (English name: Internet Protocol, IP for short) to jointly provide telecommunication services. Different from the traditional telecommunication equipment, after the NFV of the telecommunication equipment, the network becomes complicated. The virtual network function of the NFV (English name: Virtual Network Function, VNF for short) is the internal virtual machine (English name: Virtual Machine, VM for short). The communication traffic is merged with the external traffic channel, and the probability of IP packet loss, jitter, delay, etc. affecting the quality of network communication increases.
由于VM之间的网络通信质量对业务能否正常运行影响巨大,当两个虚拟机之间发生上述问题而影响业务正常运行时,则需要对VM之间的数据传输质量进行检测,快速定界问题发生位置,以便采取相应措施(如虚拟机的迁移、重建等手段)快速恢复业务。然而,目前并没有很好的检测方案对NFV下VM间的数据传输质量进行检测。Since the quality of the network communication between the VMs has a great impact on the normal operation of the service, when the above problems occur between the two virtual machines and affect the normal operation of the service, the data transmission quality between the VMs needs to be detected, and the boundary is quickly delimited. The problem occurs in order to take appropriate measures (such as virtual machine migration, reconstruction, etc.) to quickly restore the business. However, there is currently no good detection scheme to detect the quality of data transmission between VMs under NFV.
发明内容Summary of the invention
本发明的实施例提供一种数据传输质量检测方法及装置,以实现对NFV系统下不同VM之间的数据传输质量进行检测。Embodiments of the present invention provide a data transmission quality detecting method and apparatus to detect data transmission quality between different VMs in an NFV system.
为达到上述目的,本发明的实施例采用如下技术方案:In order to achieve the above object, embodiments of the present invention adopt the following technical solutions:
第一方面,本发明实施例提供一种数据传输质量检测方法,应用于网络功能虚拟化NFV系统,该方法可以包括:In a first aspect, an embodiment of the present invention provides a data transmission quality detection method, which is applied to a network function virtualization NFV system, and the method may include:
对第一虚拟机VM发送的多个具有相同传输路径的数据包进行染色,在该传输路径上的不同节点检测并统计染色数据包的数量,比较不同节点检测到的染色数据包的数量的差异,根据该差异判断不同节点间的网络质量。A plurality of data packets with the same transmission path sent by the first virtual machine VM are dyed, and different nodes on the transmission path detect and count the number of the dyed data packets, and compare the difference of the number of the dyed data packets detected by different nodes. According to the difference, the network quality between different nodes is judged.
具体的,若第一节点检测到的染色数据包的数量大于第二节点检测到的染色数据包的 数量,则确定所述第一节点与所述第二节点之间存在丢包问题其中,第一节点可以为第一VM,第二节点可以为传输路径上的其他任一节点。Specifically, if the number of the dyed data packets detected by the first node is greater than the number of the dyed data packets detected by the second node The quantity determines that there is a packet loss problem between the first node and the second node, wherein the first node may be the first VM, and the second node may be any other node on the transmission path.
如此,可以通过对数据包的染色、识别、统计,比较不同节点上染色数据包数量的差异,根据该差异确定网络间是否出现丢包问题。In this way, the difference in the number of dyed packets on different nodes can be compared by dyeing, identifying, and counting the data packets, and whether the packet loss problem occurs between the networks is determined according to the difference.
其中,上述数据包可以为IP数据包、或者是以太网数据包。The data packet may be an IP data packet or an Ethernet data packet.
可选的,在第一方面的一种可实现方式中,当数据包为IP数据包时,对IP数据包染色可以包括:Optionally, in an implementation manner of the first aspect, when the data packet is an IP data packet, coloring the IP data packet may include:
在IP数据包包头的生存时间TTL字段内填充染色标识。The dye flag is filled in the time-to-live TTL field of the IP packet header.
当数据包为以太网数据包时,对以太网数据包染色,可以包括:When the packet is an Ethernet packet, the Ethernet packet is dyed and can include:
在以太网数据包包头的预设偏移字段内填充染色标识。The dye flag is filled in the preset offset field of the Ethernet packet header.
其中,染色标识可以为预先设置的一个数值,且该数值可以用于识别出染色数据包;预设偏移字段可以根据需要进行设置。The dyeing identifier may be a preset value, and the value may be used to identify the dyed data packet; the preset offset field may be set as needed.
可选的,在第一方面的又一种可实现方式中,上述传输路径可以为:从第一VM经过第一虚拟交换机到第二VM的路径,第二VM、第一虚拟交换机、以及第一VM处于同一主机;Optionally, in another implementation manner of the first aspect, the foregoing transmission path may be: a path from the first VM to the second VM through the first virtual switch, a second VM, a first virtual switch, and a One VM is on the same host;
或者,从第一VM经过第一虚拟交换机到第二虚拟交换机、从第二虚拟交换机到第二VM的路径,第一VM与第一虚拟交换机位于第一主机,第二VM与第二虚拟交换机位于第二主机。Alternatively, the path from the first VM to the second virtual switch to the second virtual switch, and the path from the second virtual switch to the second VM, the first VM and the first virtual switch are located at the first host, the second VM and the second virtual switch Located on the second host.
其中,第一VM、第二VM位于NFV系统中的虚拟网络功能VNF实体中;第一虚拟交换机、第二虚拟交换机位于NFV系统中网络功能虚拟化基础设施NFVI的虚拟网络中。The first VM and the second VM are located in a virtual network function VNF entity in the NFV system; the first virtual switch and the second virtual switch are located in a virtual network of the network function virtualization infrastructure NFVI in the NFV system.
由于在实际应用中,VM发出的数据包是时序不断的,各节点难以定界数据包的起始发生时间和最终发生时间,易出现染色数据包统计出错的问题,因此,为了避免传输路径上各节点统计出错,在第一方面的再一种可实现方式中,所述对第一虚拟机VM发送的多个数据包进行染色具体可以包括:In the actual application, the data packets sent by the VM are sequential, and it is difficult for each node to delimit the start time and the final occurrence time of the data packet, which is prone to the problem of statistical statistics of the dyed data packet. Therefore, in order to avoid the transmission path In another implementation manner of the first aspect, the coloring of the multiple data packets sent by the first virtual machine VM may include:
第一VM在多个连续时间段发送数据包,其中,同一时间段发送的数据包的染色标识相同,相邻时间段发送的数据包的染色标识不同。The first VM sends data packets in a plurality of consecutive time periods, wherein the data packets sent in the same time period have the same dyeing identifier, and the data packets sent in the adjacent time segments have different dyeing identifiers.
其中,时间段可以根据需要进行划分,本发明实施例对此不进行限定。The time period can be divided according to the requirements, which is not limited by the embodiment of the present invention.
可选的,在对第一虚拟机VM发送的多个数据包进行染色之前,接收用于指示对所述第一VM发送的多个数据包进行染色的检测任务,该检测任务可以包含时间段,进而可以根据接收到的检测任务中的时间段可以将第一VM发送数据包的时间划分为多个连续时间段,对每个时间段内的数据包进行染色,使得传输路径上的各节点可以统计每个时间段内发送的染色数据包数量,通过比较每个时间段不同节点间的染色数据包数量,确定时间段内不同节点间的网络质量情况。Optionally, before the plurality of data packets sent by the first virtual machine VM are dyed, receiving a detection task for indicating that a plurality of data packets sent by the first VM are stained, where the detection task may include a time period And, according to the time period of the received detection task, the time when the first VM sends the data packet may be divided into multiple consecutive time segments, and the data packets in each time segment are dyed, so that each node on the transmission path The number of dyed data packets sent in each time period can be counted, and the network quality between different nodes in the time period is determined by comparing the number of dyed data packets between different nodes in each time period.
第二方面,本发明实施例还一种数据传输质量检测方法,应用于网络功能虚拟化NFV系统,该方法可以包括:In a second aspect, the embodiment of the present invention further provides a data transmission quality detecting method, which is applied to a network function virtualization NFV system, and the method may include:
对第一虚拟机VM发送的具有相同传输路径的多个数据包中第一数据包进行染色,在该传输路径上的不同节点检测并统计第一染色数据包的时戳,比较不同节点检测到的第一染色数据包的时戳的差异,根据差异判断不同节点间的网络质量。The first data packet of the plurality of data packets with the same transmission path sent by the first virtual machine VM is dyed, and different time nodes on the transmission path detect and count the time stamp of the first color data packet, and compare different node detections. The difference in the time stamp of the first dyed data packet determines the network quality between different nodes according to the difference.
具体的,若第一节点与第二节点间检测到的第一染色数据包的时戳的差值大于第三节点与第四节点间检测到的第一染色数据包的时戳的差值,则确定第一节点与第二节点间的 传输时延大于第三节点与第四节点间的传输时延。Specifically, if the difference between the time stamp of the first coloring data packet detected between the first node and the second node is greater than the time stamp of the first coloring data packet detected between the third node and the fourth node, Determining between the first node and the second node The transmission delay is greater than the transmission delay between the third node and the fourth node.
如此,可以通过对数据包的染色、识别、统计,比较不同节点上第一染色数据包时戳的差异,根据该差异确定网络间是否出现时延问题。In this way, the difference between the time stamps of the first dyed data packets on different nodes can be compared by dyeing, identifying, and counting the data packets, and the delay problem between the networks is determined according to the difference.
其中,上述数据包可以为IP数据包、或者是以太网数据包。The data packet may be an IP data packet or an Ethernet data packet.
可选的,在第二方面的一种可实现方式中,当数据包为IP数据包时,对IP数据包染色可以包括:Optionally, in an implementation manner of the second aspect, when the data packet is an IP data packet, the color data packet may be:
在IP数据包包头的生存时间TTL字段内填充染色标识。The dye flag is filled in the time-to-live TTL field of the IP packet header.
当数据包为以太网数据包时,对以太网数据包染色,可以包括:When the packet is an Ethernet packet, the Ethernet packet is dyed and can include:
在以太网数据包包头的预设偏移字段内填充染色标识。The dye flag is filled in the preset offset field of the Ethernet packet header.
其中,第一染色标识可以为预先设置的一个数值,且该数值可以用于识别出第一染色数据包;预设偏移字段可以根据需要进行设置。The first coloring identifier may be a preset value, and the value may be used to identify the first coloring data packet; the preset offset field may be set as needed.
可选的,在第二方面的又一种可实现方式中,上述传输路径可以为:从第一VM经过第一虚拟交换机到第二VM的路径,第二VM、第一虚拟交换机、以及第一VM处于同一主机;Optionally, in another implementation manner of the second aspect, the foregoing transmission path may be: a path from the first VM to the second VM through the first virtual switch, a second VM, a first virtual switch, and a One VM is on the same host;
或者,从第一VM经过第一虚拟交换机到第二虚拟交换机、从第二虚拟交换机到第二VM的路径,第一VM与第一虚拟交换机位于第一主机,第二VM与第二虚拟交换机位于第二主机。Alternatively, the path from the first VM to the second virtual switch to the second virtual switch, and the path from the second virtual switch to the second VM, the first VM and the first virtual switch are located at the first host, the second VM and the second virtual switch Located on the second host.
其中,第一VM、第二VM位于NFV系统中的虚拟网络功能VNF实体中;第一虚拟交换机、第二虚拟交换机位于NFV系统中网络功能虚拟化基础设施NFVI的虚拟网络中。The first VM and the second VM are located in a virtual network function VNF entity in the NFV system; the first virtual switch and the second virtual switch are located in a virtual network of the network function virtualization infrastructure NFVI in the NFV system.
由于在实际应用中,VM发出的数据包是时序不断的,各节点难以定界数据包的起始发生时间和最终发生时间,易出现染色数据包统计出错的问题,因此,为了避免传输路径上各节点统计出错,在第二方面的再一种可实现方式中,对第一虚拟机VM发送的多个数据包中的第一数据包进行染色具体可以包括:In the actual application, the data packets sent by the VM are sequential, and it is difficult for each node to delimit the start time and the final occurrence time of the data packet, which is prone to the problem of statistical statistics of the dyed data packet. Therefore, in order to avoid the transmission path In another implementation manner of the second aspect, the first data packet sent by the first virtual machine VM may be:
对第一VM在多个连续时间段发送的数据包进行染色,其中,同一时间段发送的第一数据包用第一染色标识染色,同一时间段发送的除所述第一数据包之外的其他所有数据包用第二染色标识染色,相邻时间段发送的第一数据包的染色标识不同。Data packets sent by the first VM in a plurality of consecutive time periods are dyed, wherein the first data packet sent in the same time period is dyed with the first coloring identifier, and the first data packet sent in the same time period except the first data packet All other data packets are dyed with the second staining identifier, and the first data packet sent in the adjacent time period has different dyeing identifiers.
需要说明的是,上述时间段可以根据需要进行划分,本发明实施例对此不进行限定。It should be noted that the foregoing time period may be divided according to requirements, which is not limited by the embodiment of the present invention.
可选的,在对第一虚拟机VM发送的多个数据包中的第一数据包进行染色之前,接收用于指示对所述第一VM发送的多个数据包进行染色的检测任务,该检测任务可以包含时间段,进而可以根据接收到的检测任务中的时间段可以将第一VM发送数据包的时间划分为多个连续时间段,对每个时间段内的数据包进行染色,使传输路径上的各节点可以统计每个时间段内发送的第一染色数据包的时戳,通过比较每个时间段不同节点间的第一染色数据包的时戳,确定时间段内不同节点间的传输时延问题。Optionally, before the first data packet of the plurality of data packets sent by the first virtual machine VM is dyed, receiving a detection task for indicating that the plurality of data packets sent by the first VM are dyed, where The detecting task may include a time period, and the time that the first VM sends the data packet may be divided into multiple consecutive time segments according to the time period in the received detecting task, and the data packet in each time segment is dyed, so that Each node on the transmission path can count the time stamp of the first coloring data packet sent in each time period, and compare the time stamps of the first coloring data packet between different nodes in each time period to determine the time between different nodes in the time segment. Transmission delay problem.
第三方面,本发明实施例还提供一种数据传输质量检测装置,用于执行上述方法,该装置可以包括:染色模块、统计模块、比较判断模块。In a third aspect, the embodiment of the present invention further provides a data transmission quality detecting apparatus, which is configured to execute the foregoing method, and the apparatus may include: a dyeing module, a statistics module, and a comparison determining module.
其中,染色模块位于网络功能虚拟化NFV系统中的第一虚拟机VM中,染色模块,用于对第一VM发送的具有相同传输路径的多个数据包进行染色;The dyeing module is located in the first virtual machine VM in the network function virtualization NFV system, and the dyeing module is configured to perform dyeing on the plurality of data packets with the same transmission path sent by the first VM;
统计模块位于传输路径上的不同节点内,统计模块,用于检测并统计自身所处节点接收到的染色数据包的数量;The statistics module is located in different nodes on the transmission path, and the statistics module is configured to detect and count the number of dye packets received by the node where the node is located;
比较判断模块,用于比较不同节点内的统计模块检测到的染色数据包的数量的差异, 根据差异判断不同节点间的网络质量。a comparison judgment module for comparing differences in the number of dye packets detected by the statistical modules in different nodes, The network quality between different nodes is judged based on the difference.
其中,上述染色模块、统计模块、以及比较判断模块的具体执行过程可以参照第一方面所述方法中的相应过程,在此不再详细赘述。For the specific execution process of the foregoing dyeing module, the statistic module, and the comparison judging module, reference may be made to the corresponding process in the method described in the first aspect, and details are not described herein again.
如此,可以通过对数据包的染色、识别、统计,比较不同节点上染色数据包数量的差异,根据该差异确定网络间是否出现丢包问题。In this way, the difference in the number of dyed packets on different nodes can be compared by dyeing, identifying, and counting the data packets, and whether the packet loss problem occurs between the networks is determined according to the difference.
进一步可选的,为了实现对数据传输过程中时延问题的检测,染色模块,还用于对第一虚拟机VM发送的具有传输路径的多个数据包中第一数据包进行染色;Further, in order to implement the detection of the delay problem in the data transmission process, the dyeing module is further configured to perform dyeing on the first data packet of the plurality of data packets having the transmission path sent by the first virtual machine VM;
统计模块,还用于检测并统计自身所处节点接收到的第一染色数据包的时戳;The statistics module is further configured to detect and count a time stamp of the first dyed data packet received by the node where the node is located;
比较判断模块,还用于比较不同节点内统计模块检测到的第一染色数据包的时戳的差异,根据差异判断不同节点间的网络质量。The comparison judgment module is further configured to compare the difference of the time stamps of the first dyed data packets detected by the statistical modules in different nodes, and determine the network quality between the different nodes according to the difference.
其中,上述染色模块、统计模块、以及比较判断模块的具体执行过程可以参照第二方面所述方法中的相应过程,在此不再详细赘述。For the specific execution process of the foregoing dyeing module, the statistic module, and the comparison judging module, reference may be made to the corresponding processes in the method described in the second aspect, and details are not described herein again.
如此,可以通过对数据包的染色、识别、统计,比较不同节点上第一染色数据包时戳的差异,根据该差异确定网络间是否出现时延问题。In this way, the difference between the time stamps of the first dyed data packets on different nodes can be compared by dyeing, identifying, and counting the data packets, and the delay problem between the networks is determined according to the difference.
可理解的是,上述数据传输质量检测装置可以单独执行对数据传输过程中丢包问题的检测,单独执行对数据传输过程中的时延问题的检测,也可以将上述方案结合起来,同时采用上述方式实现丢包和时延问题的检测。It can be understood that the foregoing data transmission quality detecting apparatus can separately perform the detection of the packet loss problem in the data transmission process, separately perform the detection of the delay problem in the data transmission process, or combine the above schemes, and simultaneously adopt the above The method implements the detection of packet loss and delay.
此外,需要说明的是,第三方面所述的数据传输质量检测装置也可以作为独立装置,部署在NFV系统中,当数据传输质量检测装置作为单独装置时,该装置中的染色模块、统计模块、以及比较判断模块可以为单独设立的处理器,也可以集成在数据传输质量检测装置的某一个处理器中实现,此外,也可以以程序代码的形式存储于数据传输质量检测装置的存储器中,由数据传输质量检测装置的某一个处理器调用并执行以上染色模块、统计模块、以及比较判断模块的功能。这里所述的处理器可以是一个中央处理器(英文全称:Central Processing Unit,简称:CPU),或者是特定集成电路(英文全称:Application Specific Integrated Circuit,简称:ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路。In addition, it should be noted that the data transmission quality detecting apparatus described in the third aspect may also be deployed as an independent device in the NFV system, and when the data transmission quality detecting device is used as a separate device, the dyeing module and the statistical module in the device. And the comparison judging module may be a separately set processor, or may be integrated in a processor of the data transmission quality detecting device, or may be stored in a memory of the data transmission quality detecting device in the form of program code. The function of the above dyeing module, the statistical module, and the comparison judging module is called and executed by one of the processors of the data transmission quality detecting device. The processor described herein may be a central processing unit (English name: Central Processing Unit, CPU for short), or a specific integrated circuit (English name: Application Specific Integrated Circuit, ASIC for short), or configured to implement One or more integrated circuits of embodiments of the present application.
由上可知,本发明实施例提供一种数据传输质量检测方法及装置,对第一虚拟机VM发送的具有相同传输路径的多个数据包进行染色,在传输路径上的不同节点检测并统计染色数据包的数量,比较不同节点检测到的染色数据包的数量的差异,根据差异判断不同节点间的网络质量。如此,可以通过对数据包的染色、识别和统计,比较不同节点间发送的数据包数量的差异,进而可以根据该差异确定出节点间的丢包问题,以便采取相应措施恢复整个业务。As can be seen from the above, the embodiment of the present invention provides a data transmission quality detecting method and apparatus, which dyes multiple data packets with the same transmission path sent by the first virtual machine VM, and detects and statistically dyes at different nodes on the transmission path. The number of packets compares the difference in the number of dyed packets detected by different nodes, and judges the network quality between different nodes according to the difference. In this way, the difference in the number of data packets sent between different nodes can be compared by dyeing, identifying, and counting the data packets, and then the packet loss problem between the nodes can be determined according to the difference, so that corresponding measures can be taken to restore the entire service.
附图说明DRAWINGS
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the embodiments or the description of the prior art will be briefly described below. Obviously, the drawings in the following description are only It is a certain embodiment of the present invention, and other drawings can be obtained from those skilled in the art without any creative work.
图1为一种NFV系统架构示意图; 1 is a schematic diagram of an NFV system architecture;
图2为本发明实施例提供的一种数据传输质量检测方法的流程图;2 is a flowchart of a method for detecting data transmission quality according to an embodiment of the present invention;
图3为本发明实施例提供的几种数据传输示意图;FIG. 3 is a schematic diagram of several data transmissions according to an embodiment of the present invention; FIG.
图4为本发明实施例提供的一种数据传输质量检测方法的流程图;FIG. 4 is a flowchart of a method for detecting data transmission quality according to an embodiment of the present invention;
图5为本发明实施例提供的一种数据传输质量检测装置的结构图;FIG. 5 is a structural diagram of a data transmission quality detecting apparatus according to an embodiment of the present invention;
图5A为本发明实施例提供的一种包含数据传输质量检测装置的NFV系统的结构图;5A is a structural diagram of an NFV system including a data transmission quality detecting apparatus according to an embodiment of the present invention;
图6为本发明实施例提供的一种数据传输质量检测方法的流程图。FIG. 6 is a flowchart of a method for detecting data transmission quality according to an embodiment of the present invention.
具体实施方式detailed description
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the drawings in the embodiments of the present invention. It is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
需要说明的是,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。It should be noted that the term “and/or” in this document is merely an association relationship describing an association object, indicating that there may be three relationships, for example, A and/or B, which may indicate that A exists separately, and A exists at the same time. And B, there are three cases of B alone. In addition, the character "/" in this article generally indicates that the contextual object is an "or" relationship.
运营商为了应对未来的竞争和挑战,避免被管道化,在顺应当前虚拟化、云计算等技术的发展趋势下,提出了NFV系统。图1为一种NFV系统架构示意图如图1所示,该NFV系统10可以包括:NFV管理和编排装置(英文全称:NFV Management and Orchestration,简称:NFV MANO)101、NFV基础设施层(英文全称:NFV Infrastructure,简称:NFVI)102、多个虚拟网络功能(英文全称:Virtual Network Function,简称:VNF)103、多个网元管理(英文全称:Element Management,简称:EM)104、网络服务、VNF和基础设施描述(Network Service,VNF and Infrastructure Description)105、以及业务支持管理装置(英文全称:Operation-Support System/Business Support System,简称:OSS/BSS)106。In order to cope with future competition and challenges, operators avoid being pipelined. In response to the current development trend of virtualization and cloud computing, operators have proposed NFV systems. FIG. 1 is a schematic diagram of an NFV system architecture. As shown in FIG. 1 , the NFV system 10 may include: NFV management and orchestration device (English name: NFV Management and Orchestration, referred to as: NFV MANO) 101, NFV infrastructure layer (English full name) : NFV Infrastructure, referred to as: NFVI) 102, multiple virtual network functions (English full name: Virtual Network Function, referred to as: VNF) 103, multiple network element management (English full name: Element Management, referred to as: EM) 104, network services, VNF and Infrastructure Description (VNF and Infrastructure Description) 105, and Business Support Management Device (English name: Operation-Support System/Business Support System, abbreviated as OSS/BSS) 106.
其中,NFV-MANO101可以包括:NFV编排器(英文全称:NFV Orchestrator,简称:NFVO)1011、一个或多个VNF管理器(英文全称:VNF Manager,简称:VNFM)1012、以及虚拟化基础设施管理器(英文全称:Virtualized Infrastructure Manager,简称:VIM)1013;NFV MANO101主要用于对VNF103和NFVI102进行监视和管理;NFV MANO101中的NFVO1011主要用于接收来自一个或多个VNFM1012的资源相关请求,并发送配置信息到VNFM1012,收集VNF103的状态信息,另外,NFVO1011还用于与VIM1013通信,以实现资源的分配和/或预留以及交换虚拟化硬件资源的配置和状态信息;VNFM1012主要用于管理一个或多个VNF103,如:实例化、更新、查询、缩放和/或终止VNF103等;VIM1013主要执行资源管理的功能,例如管理基础设施资源的分配(例如增加资源到虚拟容器)和操作功能(如收集NFVI故障信息)。Among them, NFV-MANO101 can include: NFV orchestrator (English full name: NFV Orchestrator, referred to as: NFVO) 1011, one or more VNF managers (English full name: VNF Manager, referred to as: VNFM) 1012, and virtualization infrastructure management (English name: Virtualized Infrastructure Manager, referred to as: VIM) 1013; NFV MANO101 is mainly used to monitor and manage VNF103 and NFVI102; NFVO1011 in NFV MANO101 is mainly used to receive resource related requests from one or more VNFM1012, and Send configuration information to VNFM1012 to collect status information of VNF103. In addition, NFVO1011 is also used to communicate with VIM1013 to implement resource allocation and/or reservation and exchange configuration and status information of virtualized hardware resources. VNFM1012 is mainly used to manage one. Or multiple VNFs 103, such as: instantiate, update, query, scale, and/or terminate VNF103, etc.; VIM1013 mainly performs resource management functions, such as managing the allocation of infrastructure resources (such as adding resources to virtual containers) and operating functions (such as Collect NFVI failure information).
NFVI102可以包括计算硬件1021、存储硬件1022、网络硬件1023、虚拟化层(Virtualization Layer)、虚拟计算1024、虚拟存储1025和虚拟网络1026。NFVI102里面的虚拟化层可以从物理层抽象硬件资源和解耦VNF103,以便向VNF103提供虚拟化资源,虚拟计算1024和虚拟存储1025可以以虚拟机、和/或其他虚拟容器的形式提供给VNF103,例如,一个或一个以上的VNF103可以部署在一个虚拟机(英文全称:Virtual Machine, 简称:VM)上。虚拟化层抽象网络硬件1023从而形成虚拟网络1026,虚拟网络1026可以包括虚拟交换机(Virtual Switch),虚拟交换机可以用来提供VNF103上的VM和其他VM之间的连接通信。The NFVI 102 can include computing hardware 1021, storage hardware 1022, network hardware 1023, virtualization layer, virtual computing 1024, virtual storage 1025, and virtual network 1026. The virtualization layer in NFVI 102 can abstract hardware resources from the physical layer and decouple VNF 103 to provide virtualized resources to VNF 103. Virtual computing 1024 and virtual storage 1025 can be provided to VNF 103 in the form of virtual machines, and/or other virtual containers. For example, one or more VNFs 103 can be deployed in a virtual machine (English full name: Virtual Machine, Abbreviation: VM). The virtualization layer abstracts network hardware 1023 to form a virtual network 1026, which may include a virtual switch that can be used to provide connection communication between VMs on the VNF 103 and other VMs.
如图1所示,在NFV系统下,VM之间的通讯流量与外部的业务流量通道合并,硬件资源层流量为所有虚拟机共享,网络硬件(如网卡等硬件)也为共享方式,当VM数量比较多时,IP类丢包、抖动、时延等影响数据传输质量的问题发生概率加大,此时,为了不影响数据的正常传输,需要对VM之间的数据传输进行质量检测,以快速定界问题发生位置,以便采取相应措施(如:VM迁移、重建等手段)快速恢复业务。As shown in Figure 1, under the NFV system, the communication traffic between VMs is merged with the external traffic channel, the hardware resource layer traffic is shared by all virtual machines, and the network hardware (such as network card and other hardware) is also shared. When the number is large, the probability of IP packet loss, jitter, delay, etc. affecting the quality of data transmission increases. In this case, in order not to affect the normal transmission of data, quality detection of data transmission between VMs is required to quickly The location of the demarcation problem occurs so that appropriate measures (such as VM migration, reconstruction, etc.) can be taken to quickly restore the business.
为此,本发明实施例基于如图1所示的NFV系统,在业务流的始发节点对该业务流中的数据包进行染色,当业务流按照传输路径流经各个节点时,各个节点对染色数据包进行识别、统计,获取自身接收到染色数据包的数据和时戳,进而可以根据染色数据包数量及时戳在传输路径各节点的变化情况,判断出不同节点之间的丢包情况、以及传输时延,根据判断结果定界问题发生位置。To this end, the embodiment of the present invention is based on the NFV system shown in FIG. 1, and the data packet in the service flow is dyed at the originating node of the service flow. When the service flow flows through each node according to the transmission path, each node pair The dyeing data packet is identified and counted, and the data and time stamp of the dyed data packet are obtained, and then the change of each node of the transmission path can be timely marked according to the number of dyed data packets, and the packet loss situation between different nodes is determined. And the transmission delay, and the location of the problem is delimited according to the judgment result.
为了便于描述,以下实施例一以步骤的形式示出并详细描述了本发明提供的数据传输质量检测方法,其中,示出的步骤也可以在除NFV系统之外的诸如一组可执行指令的计算机装置中执行。此外,虽然在图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。For convenience of description, the following embodiment 1 shows and describes in detail the data transmission quality detecting method provided by the present invention, wherein the steps shown may also be in addition to the NFV system, such as a set of executable instructions. Executed in a computer device. Moreover, although logical sequences are shown in the figures, in some cases the steps shown or described may be performed in a different order than the ones described herein.
实施例一 Embodiment 1
图2为本发明实施例提供的一种数据传输质量检测方法的流程图,该方法适用于如图1所示的NFV系统,用于对NFV系统下不同VM之间的数据传输质量进行检测;如图2所示,该方法可以包括以下步骤:FIG. 2 is a flowchart of a method for detecting data transmission quality according to an embodiment of the present invention. The method is applicable to an NFV system as shown in FIG. 1 for detecting data transmission quality between different VMs in an NFV system; As shown in FIG. 2, the method may include the following steps:
S101:对第一虚拟机VM发送的多个数据包进行染色,所述多个数据包具有相同传输路径。S101: Sampling a plurality of data packets sent by the first virtual machine VM, the multiple data packets having the same transmission path.
其中,所述第一VM可以为NFV系统下VNF中的任一VM,为发送多个数据包的始发节点。The first VM may be any VM in the VNF under the NFV system, and is an originating node that sends multiple data packets.
所述数据包可以为IP数据包,也可以为私有的二层数据包,如:以太网数据包,本发明实施例对此不进行限定。其中,多个数据包可以包含在同一业务流内,且该业务流为出现质量问题、待进行质量检测的业务流,或者为用户指定检测的业务流。The data packet may be an IP data packet, or may be a private Layer 2 data packet, such as an Ethernet data packet, which is not limited in this embodiment of the present invention. The multiple data packets may be included in the same service flow, and the service flow is a service flow with a quality problem, a quality check to be performed, or a service flow specified for the user.
如:在步骤S101之前,可以对第一VM发送的多个业务流的质量情况进行检测,若发现第一业务流出现质量问题,则对第一VM发送的第一业务流中的多个数据包进行染色;For example, before step S101, the quality condition of the multiple service flows sent by the first VM may be detected, and if the quality problem of the first service flow is found, the multiple data in the first service flow sent by the first VM may be Packing for dyeing;
或者,在步骤S101之前,接收用户下发的第一业务流的五元组信息,根据接收到的五元组信息对第一VM发送的第一业务流中的多个数据包进行染色,其中,五元组信息可以包含:业务流的源IP地址、目的IP地址、协议类型、源端口号、以及目的端口号。Or, before the step S101, receiving the quintuple information of the first service flow delivered by the user, and dyeing, according to the received quintuple information, the plurality of data packets in the first service flow sent by the first VM, where The quintuple information may include: a source IP address, a destination IP address, a protocol type, a source port number, and a destination port number of the service flow.
通常情况下,一个业务流具有一个特定的传输路径,该业务流中的数据包均沿着该传输路径进行传输。在NFV系统下,该传输路径可以为:从第一VM经过第一虚拟交换机到第二VM的路径,其中,第二VM、第一虚拟交换机、以及第一VM可以处于同一主机;Usually, a service flow has a specific transmission path along which data packets in the service flow are transmitted. In the NFV system, the transmission path may be: a path from the first VM through the first virtual switch to the second VM, where the second VM, the first virtual switch, and the first VM may be in the same host;
也可以为从第一VM经过第一虚拟交换机到第二虚拟交换机、再从第二虚拟交换机到第二VM的路径,该第一VM与第一虚拟交换机位于第一主机,第二VM与第二虚拟交换机可以位于第二主机,第一主机和第二主机可以处于同一VNF内,也可以处于不同的VNF内;The path may be a path from the first VM to the second virtual switch, and then from the second virtual switch to the second VM, where the first VM and the first virtual switch are located in the first host, and the second VM and the second The second virtual switch may be located in the second host, and the first host and the second host may be in the same VNF or in different VNFs;
其中,上述第二VM也可以位于NFV系统的VNF中;第一虚拟交换机、第二虚拟交换机 可以位于NFV系统的NFVI中的虚拟网络内。The second VM may also be located in the VNF of the NFV system; the first virtual switch and the second virtual switch It can be located in a virtual network in the NFVI of the NFV system.
例如,图3为本发明实施例提供的几种数据传输示意图,如图3(a)所示,主机1内的VM1可以经过该主机内的虚拟交换机,将多个数据包传输至主机1内的VM2;如图3(b)所示,主机1和主机2处于同一VNF网络内,此时,主机1内的VM1可以通过主机1内的虚拟交换机1将数据包传输至主机2内的虚拟交换机2,虚拟交换机2再将数据包传输至主机2内的VM2;如图3(c)所示,主机1和主机2处于不同VNF网络内,此时,主机1内的VM1可以通过主机1内的虚拟交换机1将数据包传输至主机2内的虚拟交换机2,虚拟交换机2再将数据包传输至主机2内的VM2。For example, FIG. 3 is a schematic diagram of several data transmissions provided by an embodiment of the present invention. As shown in FIG. 3( a ), a VM 1 in the host 1 can transmit multiple data packets to the host 1 through a virtual switch in the host 1 . VM2; as shown in Figure 3(b), host 1 and host 2 are in the same VNF network. At this time, VM1 in host 1 can transmit the data packet to virtual in host 2 through virtual switch 1 in host 1. Switch 2, virtual switch 2 then transmits the data packet to VM2 in host 2; as shown in Figure 3 (c), host 1 and host 2 are in different VNF networks. At this time, VM1 in host 1 can pass through host 1 The virtual switch 1 inside transfers the data packet to the virtual switch 2 in the host 2, and the virtual switch 2 transmits the data packet to the VM2 in the host 2.
可理解的是,虽然上述仅列举了两个VM之间的传输路径,但对于两个以上VM之间的传输路径也可以参考上述方式进行设置,即同一主机内VM间经过该主机内的虚拟交换机传输数据包,不同主机内VM间经过各自主机内的虚拟交换机传输数据包,在此不再详细赘述。It can be understood that although the above describes only the transmission path between two VMs, the transmission path between two or more VMs may also be set by referring to the foregoing manner, that is, the VMs in the same host pass through the virtual in the host. The switch transmits data packets, and the VMs in different hosts transmit data packets through the virtual switches in the respective hosts, and details are not described herein.
其中,在对数据包的染色过程中,针对于不同类型的数据包,其染色位也是不同的。可选的,当数据包为IP数据包,根据IP数据包的特殊格式,可以在IP数据包包头的生存时间(英文全称:Time To Live,简称:TTL)字段内填充染色标识,该染色标识用于识别出被染色的IP数据包。Among them, in the process of dyeing data packets, the dyeing bits are different for different types of data packets. Optionally, when the data packet is an IP data packet, according to the special format of the IP data packet, the dyeing identifier may be filled in the time of the IP data packet header (Time To Live, TTL for short), the dyeing identifier Used to identify the IP packets that are being dyed.
当数据包为以太网数据包,根据以太网数据包的特殊格式,可以在以太网数据包包头的预设偏移字段内填充染色标识,该染色标识用于识别出被染色的以太网数据包。When the data packet is an Ethernet data packet, according to the special format of the Ethernet data packet, a dyeing identifier can be filled in the preset offset field of the Ethernet data packet header, and the dyeing identifier is used to identify the dyed Ethernet data packet. .
其中,染色标识可以为预先设置的一个数值,该数值可用于识别出染色数据包;本发明实施例对此不进行限定。The coloring identifier may be a value that is set in advance, and the value may be used to identify the coloring data packet; the embodiment of the present invention does not limit this.
通常情况下,对于IP数据包而言,由于该IP数据包中的TTL字段是协议定义的标准字段,在IP数据包发送时会给该字段赋予一个较大的值(如255),之后IP数据包每经过一个虚拟交换机,TTL数值减1,当TTL数值减少到0时,IP数据包将被丢弃,所以,在不染色的情况下,始发节点IP数据包的TTL数值为255,假设传输路径中间经过了N次虚拟交换机后,则目的节点收到IP数据包时TTL数值为255-N,即在该传输路径上,TTL数值取值为从255到255-N,所以,当启动检测任务后,可以在始发节点将IP数据包的TTL数值设置为小于255-N,即将染色标识设置为(255-N)的数值,则可以区分出该IP数据包是染色数据包。Normally, for an IP packet, since the TTL field in the IP packet is a standard field defined by the protocol, the field is given a larger value (such as 255) when the IP packet is sent, and then the IP. Each time a packet passes through a virtual switch, the TTL value is decremented by 1. When the TTL value is reduced to 0, the IP packet will be discarded. Therefore, in the case of no dyeing, the TTL value of the originating node IP packet is 255, assuming After the virtual switch is passed N times in the middle of the transmission path, the destination node receives the IP packet with a TTL value of 255-N. That is, the TTL value ranges from 255 to 255-N on the transmission path, so when starting After the task is detected, the TTL value of the IP data packet can be set to less than 255-N at the originating node, that is, the value of the dye flag is set to (255-N), and the IP data packet can be distinguished as the dye data packet.
预设偏移字段可以根据需要进行设置,本发明实施例对此不进行限定。可选的,可以在步骤S101之前,预先制定该偏移字段,以便在步骤S101中根据该偏移字段对以太网数据包进行染色。例如,若预先指定8个bit的偏移字段,则在对以太网数据包染色时,在以太网数据包包头偏移8个bit的位置处填充染色标识。The preset offset field can be set as needed, which is not limited in this embodiment of the present invention. Optionally, the offset field may be pre-determined before step S101 to dye the Ethernet data packet according to the offset field in step S101. For example, if an offset field of 8 bits is specified in advance, when the Ethernet packet is colored, the dye flag is filled at a position shifted by 8 bits from the Ethernet packet header.
S102:在传输路径上的不同节点检测并统计染色数据包的数量,所述染色数据包为所述多个数据包中被染色的数据包。S102: Detect and count the number of the dyed data packets in different nodes on the transmission path, where the dyed data packets are the data packets that are stained in the plurality of data packets.
其中,传输路径上的不同节点可以包括:传输路径上的VM、虚拟交换机等设备。The different nodes on the transmission path may include: a VM, a virtual switch, and the like on the transmission path.
可选的,可以预先将填充染色标识的染色位通知给该传输路径上的各个节点,染色位可以为如步骤S101所述的TTL字段或者是预设偏移字段;Optionally, the dye bits of the padding identifier may be notified to each node on the transmission path in advance, and the dye bit may be a TTL field or a preset offset field as described in step S101;
各个节点可以根据该通知,对接收到的每个数据包的染色位进行识别,若染色位处填充有染色标识,则确定该数据包为染色数据包,并统计染色数据包的数量,否则,则确定该数据包未被染色。例如:若传输路径上的某个节点接收到数据包后,经检测发现90个数 据包的染色位内填充有染色标识,则确定接收到的染色数据包为90个。Each node may identify the dyed bits of each received data packet according to the notification. If the dyed bit is filled with the dyed mark, the data packet is determined to be a dyed data packet, and the number of the dyed data packets is counted. Otherwise, Then it is determined that the data packet is not dyed. For example, if a node on the transmission path receives a packet, it detects 90 numbers. According to the dyeing mark filled in the dyeing position of the package, it is determined that 90 dyeing packets are received.
S103:比较不同节点检测到的染色数据包的数量的差异,根据所述差异判断不同节点间的网络质量。S103: Compare differences in the number of dyed data packets detected by different nodes, and determine network quality between different nodes according to the difference.
可选的,将第一VM作为第一节点,传输路径上的其他任一节点作为第二节点,此时,若第一节点检测到的染色数据包的数量大于第二节点检测到的染色数据包的数量,则确定第一节点与第二节点之间存在丢包问题。Optionally, the first VM is used as the first node, and any other node on the transmission path is used as the second node. At this time, if the number of the dyed data packets detected by the first node is greater than the dyed data detected by the second node. The number of packets determines that there is a packet loss problem between the first node and the second node.
例如,在图3(b)所示的传输路径下,各节点检测到的染色数据包如下表1所示,P1点检测到染色IP数据包数量为100,P2点检测到染色IP数据包数量为100,P3、P4点检测到染色IP数据包数量为90,这样说明在P2和P3点之间有10个IP数据包的数据被丢失,说明P2和P3之间的网络存在IP丢包问题,并排除了P1与P2,P3与P4之间的IP丢包可能性,根据该判断结果,维护人员可以快速进行问题的定位,采取必要措施,防止业务受损。For example, in the transmission path shown in FIG. 3(b), the dye data packet detected by each node is as shown in Table 1 below, and the number of dyed IP data packets detected at point P1 is 100, and the number of dyed IP data packets is detected at point P2. For the 100, P3, P4 points, the number of dyed IP packets is 90, which means that 10 IP packets are lost between P2 and P3, indicating that there is IP packet loss in the network between P2 and P3. And exclude the possibility of IP packet loss between P1 and P2, P3 and P4. According to the judgment result, maintenance personnel can quickly locate the problem and take necessary measures to prevent business damage.
表1Table 1
统计点Statistical point 染色IP数据包数量Number of dyed IP packets
P1P1 100100
P2P2 100100
P3P3 9090
P4P4 9090
如此,可以通过对数据包的染色,VM间传输路径上各节点间统计的染色数据包数量的差异,来确定出节点间网络出现丢包问题,快速定界问题发生位置,防止业务受损。In this way, by dyeing the data packet and the difference in the number of dyed data packets between the nodes on the transmission path between the VMs, it is determined that the network has a packet loss problem between the nodes, and the location of the fast demarcation problem is prevented, thereby preventing business damage.
由于在实际应用中,VM发出的数据包是时序不断的,各节点难以定界数据包的起始发生时间和最终发生时间,易出现染色数据包统计出错的问题,因此,在本发明实施例中,为了避免传输路径上各节点统计出错,在本发明的一种可行性方案中,还可以将VM发出的数据包按照预设的时间段进行划分,对每个时间段内的数据包进行染色、检测和统计,其具体实现方式如下:In the actual application, the data packets sent by the VM are sequential, and it is difficult for each node to delimit the start time and the final occurrence time of the data packet, which is prone to the problem of statistical errors in the coloring data packet. Therefore, in the embodiment of the present invention, In order to avoid statistical errors of each node on the transmission path, in a feasible solution of the present invention, the data packets sent by the VM may be divided according to a preset time period, and the data packets in each time period are performed. Dyeing, detection and statistics, the specific implementation is as follows:
步骤S101对第一虚拟机VM发送的多个数据包进行染色具体可以包括:The step S101, the dyeing the multiple data packets sent by the first virtual machine VM may specifically include:
对第一VM在多个连续时间段发送的数据包进行染色,同一时间段发送的数据包的染色标识相同,相邻时间段发送的数据包的染色标识不同。The data packets sent by the first VM in multiple consecutive time segments are dyed, the dyeing identifiers of the data packets sent in the same time period are the same, and the dyeing identifiers of the data packets sent in the adjacent time segments are different.
其中,时间段可以根据需要进行划分,本发明实施例对此不进行限定。The time period can be divided according to the requirements, which is not limited by the embodiment of the present invention.
可选的,在对第一虚拟机VM发送的多个数据包进行染色之前,可以接收用于指示对所述第一VM发送的多个数据包进行染色的检测任务,该检测任务可以包含时间段,进而根据接收到的检测任务中的时间段可以将第一VM发送数据包的时间划分为多个连续时间段,对每个时间段内的数据包进行染色,使传输路径上的各节点统计每个时间段内染色数据包的数量,并比较同一时间段内不同节点间的染色数据包数量的差异,根据该差异判断该时间段内不同节点间的网络质量。Optionally, before the multiple data packets sent by the first virtual machine VM are dyed, a detection task for indicating that the multiple data packets sent by the first VM are to be dyed may be received, where the detection task may include time And segmenting, according to the time period of the received detection task, dividing the time when the first VM sends the data packet into multiple consecutive time segments, and dyeing the data packets in each time segment to make each node on the transmission path The number of dyed data packets in each time period is counted, and the difference in the number of dyed data packets between different nodes in the same time period is compared, and the network quality between different nodes in the time period is determined according to the difference.
例如,若以10秒为一个时间段,则可以将VM1在第一个时间段的10秒内发出的IP数据包包头的TTL字段填充为249,在第二个时间段的10秒内,将发出的IP数据包包头的 TTL字段填充为248,在第三个时间段的10秒内,将发出的IP数据包包头的TTL字段填充为249,在第四个周期的10秒内,将发出的IP数据包包头的TTL字段填充为248,后面时间段按照这种方式循环设置。For example, if 10 seconds is used as a time period, the TTL field of the IP packet header sent by VM1 within 10 seconds of the first time period may be filled with 249, and within 10 seconds of the second time period, E-mail packet header The TTL field is padded with 248. In the 10 seconds of the third time period, the TTL field of the outgoing IP packet header is filled with 249, and within 10 seconds of the fourth period, the TTL of the IP packet header will be sent. The field is filled with 248 and the subsequent time period is looped in this way.
如此,可以将VM发送的数据包以时间段为间隔进行划分,对VM在每个时间段内发送的数据包进行染色,使传输路径上的各节点统计每个时间段内染色数据包的数量,并比较同一时间段内不同节点间的染色数据包数量的差异,根据该时间段内不同节点间的染色数据包数量的差异来判断节点间网络出现的质量问题。In this way, the data packets sent by the VM can be divided into time intervals, and the data packets sent by the VM in each time period are dyed, so that each node on the transmission path counts the number of dyed data packets in each time period. And compare the difference in the number of dyed packets between different nodes in the same time period, and judge the quality problem of the network between nodes according to the difference of the number of dyed packets between different nodes in the time period.
由上可知,本发明实施例提供一种数据传输质量检测方法,对第一虚拟机VM发送的具有相同传输路径的多个数据包进行染色,在传输路径上的不同节点检测并统计染色数据包的数量,比较不同节点检测到的染色数据包的数量的差异,根据差异判断不同节点间的网络质量。如此,可以通过对数据包的染色、识别和统计,比较不同节点间发送的数据包数量的差异,进而可以根据该差异确定出节点间的丢包问题,以便采取相应措施恢复整个业务。As can be seen from the above, the embodiment of the present invention provides a data transmission quality detecting method, which dyes multiple data packets with the same transmission path sent by the first virtual machine VM, and detects and counts the dyed data packets at different nodes on the transmission path. The number of differences is compared with the number of dyed packets detected by different nodes, and the network quality between different nodes is judged according to the difference. In this way, the difference in the number of data packets sent between different nodes can be compared by dyeing, identifying, and counting the data packets, and then the packet loss problem between the nodes can be determined according to the difference, so that corresponding measures can be taken to restore the entire service.
实施例一仅实现了VM间数据传输时丢包问题的检测,下面通过实施例二对VM间数据传输时时延问题的检测方案进行了描述。The first embodiment only implements the detection of the packet loss problem during data transmission between VMs. The second embodiment describes the detection scheme of the delay problem during data transmission between VMs.
实施例二 Embodiment 2
图4为本发明实施例提供的一种数据传输质量检测方法的流程图,该方法适用于如图1所示的NFV系统,用于对NFV系统下不同VM之间的数据传输质量进行检测;如图4所示,该方法可以包括以下步骤:4 is a flowchart of a method for detecting data transmission quality according to an embodiment of the present invention. The method is applicable to an NFV system as shown in FIG. 1 for detecting data transmission quality between different VMs in an NFV system. As shown in FIG. 4, the method may include the following steps:
S201:对第一虚拟机VM发送的多个数据包中的第一数据包进行染色,该多个数据包具有相同传输路径。S201: Dye the first data packet of the plurality of data packets sent by the first virtual machine VM, where the multiple data packets have the same transmission path.
其中,所述第一VM可以为NFV系统下VNF中的任一VM,为发送第一数据包的始发节点。The first VM may be any VM in the VNF under the NFV system, and is an originating node that sends the first data packet.
第一数据包可以为IP数据包,也可以为私有的二层数据包,如:以太网数据包,本发明实施例对此不进行限定。其中,第一数据包可以为一业务流中的任一数据包,且该业务流为出现时延问题、待进行质量检测的业务流,或者为用户指定检测的业务流,可以包含大量的数据包。The first data packet may be an IP data packet, or may be a private Layer 2 data packet, such as an Ethernet data packet, which is not limited in this embodiment of the present invention. The first data packet may be any data packet in a service flow, and the service flow is a service flow delay problem, a service flow to be quality-detected, or a service flow specified for the user, and may include a large amount of data. package.
如:在步骤S201之前,可以对第一VM发送的多个业务流的质量情况进行检测,若发现第一业务流出现质量问题,则对第一VM发送的第一业务流中的第一数据包进行染色检测;For example, before the step S201, the quality of the multiple service flows sent by the first VM may be detected. If the quality of the first service flow is found, the first data in the first service flow sent by the first VM is detected. The package is subjected to dye detection;
或者,在步骤S201之前,接收用户下发的五元组信息,根据接收到的五元组信息对第一VM发送的第一业务流中的第一数据包进行染色,其中,五元组信息用于指示第一业务流,该五元组信息可以包含:业务流的源IP地址、目的IP地址、协议类型、源端口号、以及目的端口号。Alternatively, before the step S201, the quintuple information sent by the user is received, and the first data packet in the first service flow sent by the first VM is dyed according to the received quintuple information, wherein the quintuple information is The quintuple information may include: a source IP address, a destination IP address, a protocol type, a source port number, and a destination port number of the service flow.
通常情况下,一个业务流具有一个特定的传输路径,该业务流中的数据包均沿着该传输路径进行传输。在NFV系统下,该传输路径可以为:从第一VM经过第一虚拟交换机到第二VM的路径,其中,第二VM、第一虚拟交换机、以及第一VM可以处于同一主机;Usually, a service flow has a specific transmission path along which data packets in the service flow are transmitted. In the NFV system, the transmission path may be: a path from the first VM through the first virtual switch to the second VM, where the second VM, the first virtual switch, and the first VM may be in the same host;
也可以为从第一VM经过第一虚拟交换机到第二虚拟交换机、再从第二虚拟交换机到第二VM的路径,该第一VM与第一虚拟交换机位于第一主机,第二VM与第二虚拟交换机可以位于第二主机,第一主机和第二主机可以处于同一VNF内,也可以处于不同的VNF内;The path may be a path from the first VM to the second virtual switch, and then from the second virtual switch to the second VM, where the first VM and the first virtual switch are located in the first host, and the second VM and the second The second virtual switch may be located in the second host, and the first host and the second host may be in the same VNF or in different VNFs;
其中,上述第二VM也可以位于NFV系统的VNF中;第一虚拟交换机、第二虚拟交换机 可以位于NFV系统的NFVI中的虚拟网络内。The second VM may also be located in the VNF of the NFV system; the first virtual switch and the second virtual switch It can be located in a virtual network in the NFVI of the NFV system.
可理解的是,虽然上述仅列举了两个VM之间的传输路径,但对于两个以上VM之间的传输路径也可以参考上述方式进行设置,即同一主机内VM间经过该主机内的虚拟交换机传输数据包,不同主机内VM间经过各自主机内的虚拟交换机传输数据包,在此不再详细赘述。It can be understood that although the above describes only the transmission path between two VMs, the transmission path between two or more VMs may also be set by referring to the foregoing manner, that is, the VMs in the same host pass through the virtual in the host. The switch transmits data packets, and the VMs in different hosts transmit data packets through the virtual switches in the respective hosts, and details are not described herein.
其中,在对第一数据包的染色过程中,针对于不同类型的数据包,其染色位也是不同的。可选的,当第一数据包为IP数据包,根据IP数据包的特殊格式,可以在IP数据包包头的生存时间(英文全称:Time To Live,简称:TTL)字段内填充第一染色标识,该第一染色标识用于识别出第一数据包。Wherein, in the process of dyeing the first data packet, the dyeing bits are different for different types of data packets. Optionally, when the first data packet is an IP data packet, according to a special format of the IP data packet, the first coloring identifier may be filled in a field of an IP data packet header (Time To Live, TTL for short). The first coloring identifier is used to identify the first data packet.
当第一数据包为以太网数据包,根据以太网数据包的特殊格式,可以在以太网数据包包头的预设偏移字段内填充第一染色标识,该染色标识用于识别出第一数据包。When the first data packet is an Ethernet data packet, according to a special format of the Ethernet data packet, the first coloring identifier may be filled in a preset offset field of the Ethernet data packet header, and the dyeing identifier is used to identify the first data. package.
其中,染色标识可以为预先设置的一个数值,该数值可以识别出第一染色数据包,本发明实施例对此不进行限定。The coloring identifier may be a value that is set in advance, and the value may identify the first coloring data packet, which is not limited by the embodiment of the present invention.
通常情况下,对于IP数据包而言,由于该IP数据包中的TTL字段是协议定义的标准字段,在IP数据包发送时会给该字段赋予一个较大的值(如255),之后IP数据包每经过一个虚拟交换机,TTL数值减1,当TTL数值减少到0时,IP数据包将被丢弃,所以,在不染色的情况下,始发节点IP数据包的TTL数值为255,假设传输路径中间经过了N次虚拟交换机后,则目的节点收到IP数据包时TTL数值为255-N,即在该传输路径上,TTL数值取值为从255到255-N,所以,当启动检测任务后,可以在始发节点将IP数据包的TTL数值设置为小于255-N,即将染色标识设置为(255-N)的数值,则可以区分出该IP数据包是染色数据包。Normally, for an IP packet, since the TTL field in the IP packet is a standard field defined by the protocol, the field is given a larger value (such as 255) when the IP packet is sent, and then the IP. Each time a packet passes through a virtual switch, the TTL value is decremented by 1. When the TTL value is reduced to 0, the IP packet will be discarded. Therefore, in the case of no dyeing, the TTL value of the originating node IP packet is 255, assuming After the virtual switch is passed N times in the middle of the transmission path, the destination node receives the IP packet with a TTL value of 255-N. That is, the TTL value ranges from 255 to 255-N on the transmission path, so when starting After the task is detected, the TTL value of the IP data packet can be set to less than 255-N at the originating node, that is, the value of the dye flag is set to (255-N), and the IP data packet can be distinguished as the dye data packet.
预设偏移字段可以根据需要进行设置,本发明实施例对此不进行限定。可选的,可以在步骤S201之前,预先制定该偏移字段,以便在步骤S201中根据该偏移字段对以太网数据包进行染色。The preset offset field can be set as needed, which is not limited in this embodiment of the present invention. Optionally, the offset field may be pre-determined before step S201 to dye the Ethernet data packet according to the offset field in step S201.
需要说明的是,为了便于后续节点从大量数据包中区分出被染色的第一数据包,在本发明实施例中,可以仅对第一VM发出的第一数据包进行染色,而其他数据包不进行染色处理,也可以对包含第一数据包的多个数据包均进行染色处理,只不过需要第一数据包的染色标识与其他数据包的染色标识不同,而第一数据包之外的数据包的染色标识可以完全相同。It should be noted that, in the embodiment of the present invention, only the first data packet sent by the first VM may be dyed, and other data packets may be used in order to facilitate the subsequent node to distinguish the first data packet from the large number of data packets. The dyeing process may be performed on a plurality of data packets including the first data packet without performing the dyeing process, except that the dyeing identifier of the first data packet is different from the dyeing identifier of the other data packets, and the first data packet is not included. The dyeing identifier of the data packet can be identical.
S202:在传输路径上的不同节点检测并统计第一染色数据包的时戳,所述第一染色数据包为被染色的所述第一数据包。S202: The time stamp of the first coloring data packet is detected and counted by different nodes on the transmission path, and the first coloring data packet is the first data packet that is stained.
其中,传输路径上的不同节点可以包括:传输路径上的VM、虚拟交换机等设备。The different nodes on the transmission path may include: a VM, a virtual switch, and the like on the transmission path.
可选的,可以预先将填充染色标识的染色位通知给该传输路径上的各个节点,染色位可以为如步骤S201所述的TTL字段或者是预设偏移字段;Optionally, the dyeing bit of the padding identifier may be notified to each node on the transmission path in advance, and the dye bit may be a TTL field or a preset offset field as described in step S201;
各个节点可以根据该通知,对接收到的每个数据包的染色位进行识别,若某一数据包的染色位处填充有用于识别出第一数据包的染色标识,则确定该数据包为第一染色数据包,并统计第一染色数据包的时戳。Each node may identify the dyed bits of each received data packet according to the notification. If the dyeing bit of a certain data packet is filled with a dyed identifier for identifying the first data packet, the data packet is determined to be the first A stained packet and the time stamp of the first stained packet is counted.
S203:比较不同节点检测到的第一染色数据包的时戳的差异,根据所述差异判断不同节点间的网络质量。S203: Compare differences in time stamps of the first dyed data packets detected by different nodes, and determine network quality between different nodes according to the differences.
可选的,若第一节点与第二节点间检测到的第一染色数据包的时戳的差值大于第三节 点与第四节点间检测到的第一染色数据包的时戳的差值,则确定所述第一节点与所述第二节点间的传输时延大于所述第三节点与所述第四节点间的传输时延。Optionally, if the difference between the time stamps of the first dyed data packet detected between the first node and the second node is greater than the third section Determining, by the difference between the time stamp of the first dyed data packet and the fourth node, the transmission delay between the first node and the second node is greater than the third node and the fourth Transmission delay between nodes.
例如,在图3(b)所示的传输路径下,各节点检测到的第一染色数据包的时戳如下表2所示,P1点检测到第一染色数据包的时戳为T1,P2点检测到第一染色数据包的时戳为T2,P3点检测到第一染色数据包的时戳为T3,P4点检测到第一染色数据包的时戳为T4,此时,若T3-T2的时间差大于T2-T1的时间差,则确定P2点和P3之间存在传输时延问题,根据该判断结果,维护人员可以快速进行问题的定位,采取必要措施,防止业务受损。For example, in the transmission path shown in FIG. 3(b), the time stamp of the first coloring data packet detected by each node is as shown in Table 2, and the time stamp of the first coloring data packet detected by the point P1 is T1, P2. The time stamp of the first dyed data packet is detected as T2, the time stamp of the first dyed data packet is detected as T3 at the point P3, and the time stamp of the first dyed data packet is detected as T4 at the point P4, and at this time, if T3- If the time difference of T2 is greater than the time difference of T2-T1, it is determined that there is a transmission delay problem between P2 and P3. According to the judgment result, the maintenance personnel can quickly locate the problem and take necessary measures to prevent business damage.
表2Table 2
统计点Statistical point 第一染色数据包的时戳Time stamp of the first stained packet
P1P1 T1T1
P2P2 T2T2
P3P3 T3T3
P4P4 T4T4
如此,可以通过对数据包的染色,VM间传输路径上各节点间统计的染色数据包时戳的差异,来确定出节点间网络出现时延问题,快速定界问题发生位置,防止业务受损。In this way, the difference between the time stamps of the data packets between the nodes on the transmission path between the VMs can be determined by dyeing the data packets, and the delay time of the network between the nodes is determined, and the location of the fast delimitation problem is prevented to prevent business damage. .
由于在实际应用中,VM发出的数据包是时序不断的,各节点难以定界数据包的起始发生时间和最终发生时间,易出现染色数据包统计出错的问题,因此,在本发明实施例中,为了避免传输路径上各节点统计出错,在本发明的一种可行性方案中,对第一虚拟机VM发送的多个数据包中的第一数据包进行染色具体可以包括:In the actual application, the data packets sent by the VM are sequential, and it is difficult for each node to delimit the start time and the final occurrence time of the data packet, which is prone to the problem of statistical errors in the coloring data packet. Therefore, in the embodiment of the present invention, In order to avoid the statistical error of each node on the transmission path, in a feasible solution of the present invention, the coloring the first data packet of the plurality of data packets sent by the first virtual machine VM may include:
对第一VM在多个连续时间段发送的数据包进行染色,其中,同一时间段发送的第一数据包用第一染色标识染色,同一时间段发送的除所述第一数据包之外的其他所有数据包用第二染色标识染色,相邻时间段发送的第一数据包的染色标识不同。Data packets sent by the first VM in a plurality of consecutive time periods are dyed, wherein the first data packet sent in the same time period is dyed with the first coloring identifier, and the first data packet sent in the same time period except the first data packet All other data packets are dyed with the second staining identifier, and the first data packet sent in the adjacent time period has different dyeing identifiers.
其中,第一数据包可以为每个时间段内第一个发出的数据包。此外,需要说明的是,上述时间段可以根据需要进行划分,本发明实施例对此不进行限定;并且,相邻时间段采用的第二染色标识可以相同也可以不同,本发明实施例对此也不进行限定。The first data packet may be the first data packet sent in each time period. In addition, it should be noted that the foregoing time period may be divided according to requirements, which is not limited by the embodiment of the present invention; and the second dyeing identifiers used in the adjacent time periods may be the same or different, and the embodiment of the present invention Nor is it limited.
可选的,在对第一虚拟机VM发送的多个数据包中的第一数据包进行染色之前,可以接收用于指示对所述第一VM发送的多个数据包进行染色的检测任务,该检测任务可以包含时间段,进而可以根据接收到的检测任务中的时间段可以将第一VM发送数据包的时间划分为多个连续时间段,对每个时间段内的数据包进行染色,使传输路径上的各节点统计每个时间段内第一染色数据包的时戳,比较同一时间段内不同节点间的第一染色数据包时戳的差异,根据该差异判断该时间段内不同节点间的网络质量。Optionally, before the first data packet of the plurality of data packets sent by the first virtual machine VM is dyed, a detection task for indicating that the multiple data packets sent by the first VM are to be dyed may be received. The detecting task may include a time period, and may further divide the time when the first VM sends the data packet into multiple consecutive time segments according to the time period in the received detecting task, and dye the data packet in each time segment. Having each node on the transmission path count the time stamp of the first coloring data packet in each time period, and compare the difference of the first coloring data packet time stamp between different nodes in the same time period, and determine different time periods according to the difference. Network quality between nodes.
例如,若以10秒为一个时间段,则可以将VM1在第一个时间段的10秒内发出的第一个IP数据包包头的TTL字段填充为247,在第二个时间段的10秒内,将发出的第一个IP数据包包头的TTL字段填充为246,在第三个时间段的10秒内,将发出的第一个IP数据包包头的TTL字段填充为247,在第四个周期的10秒内,将发出的第一个IP数据包包头的TTL字段填充为246,后面时间段按照这种方式循环设置。For example, if 10 seconds is used as a time period, the TTL field of the first IP packet header sent by VM1 within 10 seconds of the first time period can be filled with 247, and 10 seconds in the second time period. Inside, the TTL field of the first IP packet header to be sent is filled with 246, and within 10 seconds of the third time period, the TTL field of the first IP packet header to be sent is filled with 247, in the fourth Within 10 seconds of the cycle, the TTL field of the first IP packet header to be sent is filled with 246, and the subsequent time period is cyclically set in this manner.
如此,可以对VM发送的数据包以时间段为间隔进行划分,对VM在每个时间段内发送 的第一数据包进行染色,传输路径上的各节点统计每个时间段内第一染色数据包的时戳,并比较同一时间段内不同节点间的第一染色数据包时戳的差异之后,根据任一时间段内不同节点间的第一染色数据包时戳的差异来判断节点间网络出现时延问题。In this way, the data packets sent by the VM can be divided into time intervals, and the VM is sent in each time period. The first data packet is dyed, and each node on the transmission path counts the time stamp of the first coloring data packet in each time period, and compares the difference of the first coloring data packet time stamp between different nodes in the same time period. The delay time of the network between nodes is determined according to the difference of the first coloring packet time stamp between different nodes in any time period.
由上可知,本发明实施例提供一种数据传输质量检测方法,对第一虚拟机VM发送的具有相同传输路径的多个数据包中第一数据包进行染色,在传输路径上的不同节点检测并统计第一染色数据包的数量,比较不同节点检测到的第一染色数据包的时戳的差异,根据差异判断不同节点间的网络质量。如此,可以通过对数据包的染色、识别和统计,比较不同节点间发送的数据包时戳的差异,进而可以根据该差异确定出节点间的时延问题,以便采取相应措施恢复整个业务。As can be seen from the above, the embodiment of the present invention provides a data transmission quality detecting method, which performs coloring on a first data packet of multiple data packets with the same transmission path sent by the first virtual machine VM, and detects different nodes on the transmission path. The number of the first dyed data packets is counted, and the difference of the time stamps of the first dyed data packets detected by different nodes is compared, and the network quality between different nodes is judged according to the difference. In this way, the difference between the time stamps of the data packets sent between different nodes can be compared by dyeing, identifying and counting the data packets, and then the delay between the nodes can be determined according to the difference, so that corresponding measures can be taken to restore the entire service.
上述实施例一、实施例二分别实现了对网络中丢包、时延问题的检测,可理解的是,在本发明实施例的又一可行性方案中,可以将实施例一和实施例二结合在一起,共同实现对网络丢包、时延两个问题的检测,本发明在此不再详细描述。The first embodiment and the second embodiment respectively implement the detection of the packet loss and the delay in the network. It can be understood that, in another feasible solution of the embodiment of the present invention, the first embodiment and the second embodiment can be used. The invention combines the detection of network packet loss and delay, and the present invention will not be described in detail herein.
如:可以对第一VM发送的多个数据包中的第一个数据包进行第一染色,对其他数据包进行第二染色,传输路径上的各个节点可以检测并统计所有染色数据包的数量、以及第一个被染色的数据包的时戳,比较不同节点间染色数据包数量的差异、以及第一个被染色的数据包时戳的差异,根据这两个差异来判断出不同节点间的丢包和时延问题。For example, the first data packet of the first data packet sent by the first VM may be firstly dyed, and the other data packets may be secondly colored, and each node on the transmission path may detect and count the number of all the dyed data packets. And the timestamp of the first dyed packet, comparing the difference between the number of dyed packets between different nodes, and the difference of the first packetized timestamp, based on these two differences to determine the difference between the different nodes Loss and delay issues.
或者,为了避免在实际应用中VM发出的数据包是时序不断的,各节点难以定界数据包的起始发生时间和最终发生时间,易出现染色数据包统计出错的问题,可以将第一VM发送的数据包进行按照预设时段划分,对第一VM在多个连续时间段发送的数据包进行染色,其中,同一时间段发送的第一数据包用第一染色标识染色,同一时间段发送的除所述第一数据包之外的其他所有数据包用第二染色标识染色,并且,相邻时间段采用的第一染色标识不同,相邻时段采用的第二染色标识可以相同也可以不同。其中,第一染色标识不同于第二染色标识,如此,可以识别出每个时段内的第一染色数据包、以及所有染色数据包,根据第一染色数据包的时戳、以及染色数据包的数量同时对网络时延、丢包两个问题进行检测。Or, in order to avoid the time-out of the data packets sent by the VM in the actual application, it is difficult for each node to delimit the start time and the final occurrence time of the data packet, and the problem of the statistics of the dyed data packet is easy to occur, and the first VM can be used. The sent data packet is divided according to a preset time period, and the data packet sent by the first VM in multiple consecutive time periods is dyed, wherein the first data packet sent in the same time period is dyed by the first dyeing identifier, and is sent in the same time period. All the data packets except the first data packet are dyed with the second dyeing identifier, and the first dyeing identifier used in the adjacent time period is different, and the second dyeing identifier used in the adjacent time period may be the same or different. . Wherein, the first dyeing identifier is different from the second dyeing identifier, so that the first coloring data packet in each time period and all the coloring data packets can be identified, according to the time stamp of the first coloring data packet, and the coloring data packet. The number simultaneously detects two problems of network delay and packet loss.
例如,若以10秒为一个时间段,则可以将VM1在第一个时间段的10秒内发出的第一个IP数据包包头的TTL字段填充为247,剩余IP数据包包头的TTL字段填充为249,在第二个时间段的10秒内,将发出的第一个IP数据包包头的TTL字段填充为246,剩余IP数据包包头的TTL字段填充为248,在第三个时间段的10秒内,将发出的第一个IP数据包包头的TTL字段填充为247,剩余IP数据包包头的TTL字段填充为249,在第四个周期的10秒内,将发出的第一个IP数据包包头的TTL字段填充为246,剩余IP数据包包头的TTL字段填充为248,后面时间段按照这种方式循环设置。For example, if 10 seconds is used as a time period, the TTL field of the first IP packet header sent by VM1 within 10 seconds of the first time period may be filled with 247, and the TTL field of the remaining IP data packet header is filled. 249, in the 10 seconds of the second time period, the TTL field of the first IP packet header is filled with 246, and the TTL field of the remaining IP packet header is filled with 248, in the third time period. Within 10 seconds, the TTL field of the first IP packet header to be sent is filled with 247, the TTL field of the remaining IP packet header is filled with 249, and the first IP will be sent within 10 seconds of the fourth period. The TTL field of the packet header is filled with 246, and the TTL field of the remaining IP packet header is filled with 248, and the subsequent time period is cyclically set in this manner.
根据本发明实施例,下述实施例还提供了一种数据传输质量检测装置30,优选的用于执行实施例一、实施例二所述的数据传输质量检测方法。According to an embodiment of the present invention, the following embodiments further provide a data transmission quality detecting apparatus 30, which is preferably used to perform the data transmission quality detecting method according to the first embodiment and the second embodiment.
实施例三 Embodiment 3
图5为本发明实施例提供的一种数据传输质量检测装置30的结构图,如图5所示,该装置30可以包括:染色模块301、统计模块302、比较判断模块303。FIG. 5 is a structural diagram of a data transmission quality detecting apparatus 30 according to an embodiment of the present invention. As shown in FIG. 5, the apparatus 30 may include: a coloring module 301, a statistics module 302, and a comparison determining module 303.
其中,图5所示的数据传输质量检测装置30可以单独部署在NFV系统中,也可以将数据传输质量检测装置的各个模块分散在NFV系统的各个功能部件中,如图5A为包含数据传 输质量检测装置30的NFV系统架构示意图,如图5所示:The data transmission quality detecting apparatus 30 shown in FIG. 5 may be separately deployed in the NFV system, or each module of the data transmission quality detecting apparatus may be dispersed in each functional component of the NFV system, as shown in FIG. 5A. The schematic diagram of the NFV system architecture of the transmission quality detecting device 30 is as shown in FIG. 5:
染色模块301部署在NFV系统VNF实体内的每个VM中,统计模块302部署在数据传输路径上的每个节点内(如:VNF实体内的每个VM中、位于虚拟网络的虚拟交换机内),比较判断模块303可以作为独立虚拟机VM部署在NFV系统中,可以作为功能部件部署在NFV系统的VNFM或EM中,需要说明的是,图5A为了便于描述,以比较判断模块303部署在VNFM内为例进行说明。The coloring module 301 is deployed in each VM in the NFV system VNF entity, and the statistics module 302 is deployed in each node on the data transmission path (eg, in each VM in the VNF entity, in the virtual switch of the virtual network) The comparison judging module 303 can be deployed in the NFV system as a separate virtual machine VM, and can be deployed as a functional component in the VNFM or EM of the NFV system. It should be noted that, for convenience of description, the comparison judging module 303 is deployed in the VNFM. The inside is explained as an example.
通常情况下,染色模块301在数据始发的VM内执行染色功能。具体的,染色模块301,用于对所述第一VM发送的多个数据包进行染色,所述多个数据包具有相同传输路径。Typically, the staining module 301 performs a staining function within the VM from which the data originated. Specifically, the dyeing module 301 is configured to perform staining on multiple data packets sent by the first VM, where the multiple data packets have the same transmission path.
统计模块302用于检测并统计自身所处节点上染色数据包的数量,染色数据包为多个数据包中被染色的数据包。The statistics module 302 is configured to detect and count the number of dyed data packets on the node where the data is located, and the stained data packet is the data packet that is stained in the plurality of data packets.
比较判断模块303,用于比较不同节点内的统计模块302检测到的染色数据包的数量的差异,根据差异判断不同节点间的网络质量。The comparison judging module 303 is configured to compare differences in the number of dyed data packets detected by the statistical module 302 in different nodes, and determine network quality between different nodes according to the difference.
可选的,当数据包为IP数据包时,染色模块301,具体可以用于:Optionally, when the data packet is an IP data packet, the coloring module 301 may be specifically configured to:
在IP数据包包头的生存时间TTL字段内填充染色标识,染色标识用于识别出被染色的IP数据包。The coloring identifier is filled in the TTL field of the IP packet header, and the coloring identifier is used to identify the dyed IP packet.
当数据包为以太网数据包时,染色模块301,具体用于:When the data packet is an Ethernet data packet, the coloring module 301 is specifically configured to:
在以太网数据包包头的预设偏移字段内填充染色标识,染色标识用于识别出被染色的以太网数据包。A dyed identifier is filled in the preset offset field of the Ethernet packet header, and the dyed identifier is used to identify the stained Ethernet packet.
可选的,比较判断模块303,具体用于:Optionally, the comparison determining module 303 is specifically configured to:
主动收集各个节点统计的染色数据包数量,或者,接收由各个节点上报的自身统计的染色数据包数量;Actively collect the number of dyed data packets counted by each node, or receive the number of dyed data packets reported by each node;
若第一节点检测到的染色数据包的数量小于第二节点检测到的染色数据包的数量,则确定第一节点与第二节点之间存在丢包问题;其中,第一节点可以为第一VM,第二节点可以为传输路径上的其他任一节点。If the number of the dyed data packets detected by the first node is smaller than the number of the dyed data packets detected by the second node, determining that there is a packet loss problem between the first node and the second node; wherein the first node may be the first VM, the second node can be any other node on the transmission path.
可理解的是,当节点为虚拟交换机,由于虚拟交换机位于NFV系统的虚拟网络中,不能直接与比较判断模块303进行通信,因此,虚拟交换机需要通过NFV系统中的VIM将自身统计的染色数据包数量转发至比较判断模块303。It can be understood that when the node is a virtual switch, since the virtual switch is located in the virtual network of the NFV system, the comparison judgment module 303 cannot be directly communicated. Therefore, the virtual switch needs to collect the self-sampling dye data packet through the VIM in the NFV system. The quantity is forwarded to the comparison determination module 303.
可选的,如图5所示,该数据传输质量检测装置还可以包含数据转发模块304。其中,数据转发模块304可以部署在如图5A所示的VIM中。Optionally, as shown in FIG. 5, the data transmission quality detecting apparatus may further include a data forwarding module 304. The data forwarding module 304 can be deployed in the VIM as shown in FIG. 5A.
该数据转发模块304,用于接收虚拟交换机统计的染色数据包数量,并将接收到的染色数据包数量转发至比较判断模块303。The data forwarding module 304 is configured to receive the number of the dyed data packets counted by the virtual switch, and forward the received number of the dyed data packets to the comparison determining module 303.
由于在实际应用中,VM发出的数据包是时序不断的,各节点难以定界数据包的起始发生时间和最终发生时间,易出现染色数据包统计出错的问题,因此,在本发明实施例中,为了避免传输路径上各节点统计出错,在本发明的一种可行性方案中,染色模块301具体可以用于:In the actual application, the data packets sent by the VM are sequential, and it is difficult for each node to delimit the start time and the final occurrence time of the data packet, which is prone to the problem of statistical errors in the coloring data packet. Therefore, in the embodiment of the present invention, In a feasible solution of the present invention, the dyeing module 301 can be specifically used to:
对第一VM在多个连续时间段发送的数据包进行染色,其中,同一时间段发送的数据包的染色标识相同,相邻时间段发送的数据包的染色标识不同。The data packets sent by the first VM in a plurality of consecutive time segments are dyed, wherein the data packets sent in the same time period have the same dyeing identifier, and the data packets sent in the adjacent time segments have different dyeing identifiers.
如此,可以通过对数据包的染色、识别和统计,比较不同节点间发送的数据包数量的差异,进而可以根据该差异确定出节点间的丢包问题,以便采取相应措施恢复整个业务。 In this way, the difference in the number of data packets sent between different nodes can be compared by dyeing, identifying, and counting the data packets, and then the packet loss problem between the nodes can be determined according to the difference, so that corresponding measures can be taken to restore the entire service.
除此之外,在本发明实施例的又一可行性方案中,图5提供的装置还可以用于实现对节点间传输时延问题的检测,具体实现如下:In addition, in another feasible solution of the embodiment of the present invention, the apparatus provided in FIG. 5 can also be used to implement detection of a transmission delay problem between nodes, and the specific implementation is as follows:
染色模块301,还用于对第一虚拟机VM发送的多个数据包中第一数据包进行染色,多个数据包具有相同传输路径。The dyeing module 301 is further configured to perform staining on the first data packet of the plurality of data packets sent by the first virtual machine VM, where the plurality of data packets have the same transmission path.
统计模块302,还用于检测并统计自身所处节点接收到的第一染色数据包的时戳,第一染色数据包为被染色第一数据包。The statistics module 302 is further configured to detect and count the time stamp of the first coloring data packet received by the node where the node is located, and the first coloring data packet is the first data packet that is dyed.
比较判断模块303,还用于比较不同节点内统计模块302检测到的第一染色数据包的时戳的差异,根据差异判断不同节点间的网络质量。The comparison judging module 303 is further configured to compare the difference of the time stamps of the first dyed data packets detected by the statistics module 302 in different nodes, and determine the network quality between the different nodes according to the difference.
其中,与上述实现方式相同,当第一数据包为IP数据包时,染色模块301,具体可以用于:The dyeing module 301 can be used to: when the first data packet is an IP data packet, the
在IP数据包包头的生存时间TTL字段内填充第一染色标识,第一染色标识用于识别出第一数据包。The first coloring identifier is filled in the time-to-live TTL field of the IP packet header, and the first coloring identifier is used to identify the first data packet.
当第一数据包为以太网数据包时,染色模块301,具体可以用于:When the first data packet is an Ethernet data packet, the coloring module 301 can be specifically used to:
在第一以太网数据包包头的预设偏移字段内填充第一染色标识,第一染色标识用于识别出第一数据包。Filling a first coloring identifier in a preset offset field of the first Ethernet packet header, the first coloring identifier is used to identify the first data packet.
可选的,比较判断模块303,具体还可以用于:Optionally, the comparison determining module 303 is specifically configured to:
若第一节点与第二节点间检测到的第一染色数据包的时戳的差值大于第三节点与第四节点间检测到的第一染色数据包的时戳的差值,则确定第一节点与第二节点间的传输时延大于第三节点与第四节点间的传输时延。If the difference between the timestamps of the first coloring data packet detected between the first node and the second node is greater than the difference between the timestamps of the first coloring data packet detected between the third node and the fourth node, The transmission delay between the node and the second node is greater than the transmission delay between the third node and the fourth node.
可选的,染色模块301具体可以用于:Optionally, the dyeing module 301 can be specifically configured to:
对第一VM在多个连续时间段发送的数据包进行染色,其中,同一时间段发送的第一数据包用第一染色标识染色,同一时间段发送的除所述第一数据包之外的其他所有数据包用第二染色标识染色,相邻时间段发送的第一数据包的染色标识不同,相邻时间段发送的除所述第一数据包之外的其他所有数据包的染色标识不同。Data packets sent by the first VM in a plurality of consecutive time periods are dyed, wherein the first data packet sent in the same time period is dyed with the first coloring identifier, and the first data packet sent in the same time period except the first data packet All other data packets are dyed by the second coloring identifier, and the dyeing identifiers of the first data packets sent in the adjacent time segments are different, and the dyeing identifiers of all the data packets sent by the adjacent time segments except the first data packet are different. .
如此,可以通过对数据包的染色、识别和统计,比较不同节点间发送的数据包时戳的差异,进而可以根据该差异确定出节点间的时延问题,以便采取相应措施恢复整个业务。In this way, the difference between the time stamps of the data packets sent between different nodes can be compared by dyeing, identifying and counting the data packets, and then the delay between the nodes can be determined according to the difference, so that corresponding measures can be taken to restore the entire service.
下面结合图5所示的检测装置,以检测从VM1经过虚拟交换机1向VM2的第一业务流的传输质量为例,对上述各个模块的执行过程(如图6所示)进行具体描述。The detection process shown in FIG. 5 is used to detect the transmission quality of the first service flow from the VM1 through the virtual switch 1 to the VM2, and the execution process of each module (shown in FIG. 6) is specifically described.
S1:比较判断模块303启动检测任务,并将检测任务下发给VM1、虚拟交换机、以及VM2。S1: The comparison judgment module 303 starts the detection task, and sends the detection task to the VM1, the virtual switch, and the VM2.
其中,检测任务用于指示各节点设备进行数据传输质量检测,且检测任务包含:第一业务流的五元组信息、以及时间段。The detecting task is used to instruct each node device to perform data transmission quality detection, and the detecting task includes: quintuple information of the first service flow, and a time period.
可选的,当节点为VM时,比较判断模块303之间将检测任务发送至节点,当节点为虚拟交换机时,如图6中的步骤S1.1所示,比较判断模块303将检测任务发送至数据转发模块304,数据转发模块304将检测任务转发至虚拟交换机。Optionally, when the node is a VM, the comparison determination module 303 sends the detection task to the node. When the node is a virtual switch, as shown in step S1.1 in FIG. 6, the comparison determination module 303 sends the detection task. To the data forwarding module 304, the data forwarding module 304 forwards the detection task to the virtual switch.
S2:VM1中的染色模块301接收到检测任务后,根据时间段,对其发送的第一业务流中的数据包进行周期性染色。S2: After receiving the detection task, the dyeing module 301 in the VM1 periodically dyes the data packet in the first service flow sent according to the time period.
如:当数据包为IP数据包时,在其TTL字段填充染色标识;当数据包为以太网数据包时,在其预设偏移字段填充染色标识。 For example, when the data packet is an IP data packet, the dyeing identifier is filled in its TTL field; when the data packet is an Ethernet data packet, the dyeing identifier is filled in its preset offset field.
可选的,可以对每个周期内的第一个数据包进行第一染色,其他数据包进行第二染色,且第一个数据包的染色标识与该时间段内的其他染色标识不同,相邻时间段间的第一个数据包的染色标识是不同的,且相邻时间段间的其他数据包的染色周期也是不同的。Optionally, the first data packet in each period may be subjected to a first coloring, and the other data packets may be subjected to a second coloring, and the dyeing identifier of the first data packet is different from other dyeing identifiers in the time period. The dyeing identifier of the first data packet between adjacent time segments is different, and the dyeing periods of other data packets between adjacent time segments are also different.
S3:VM1中的统计模块302检测并统计每个时间段内VM1发送的染色数据包数量、以及第一染色数据包的时戳。S3: The statistics module 302 in VM1 detects and counts the number of dye packets sent by VM1 in each time period, and the time stamp of the first dyed data packet.
其中,第一染色数据包为每个周期内第一个被染色的数据包。The first dyed data packet is the first data packet to be dyed in each cycle.
S4:VM2中的统计模块302接收到检测任务后,检测并统计每个时间段内虚拟交换机发送的染色数据包数量、以及第一染色数据包的时戳。S4: After receiving the detection task, the statistics module 302 in the VM2 detects and counts the number of the dyed data packets sent by the virtual switch in each time period and the time stamp of the first coloring data packet.
S5:虚拟交换机中的统计模块302接收到检测任务后,检测并统计每个时间段内VM1发送的染色数据包数量、以及第一个染色数据包的时戳。S5: After receiving the detection task, the statistics module 302 in the virtual switch detects and counts the number of dye packets sent by VM1 in each time period and the time stamp of the first dyed data packet.
S6:比较判断模块303向各个节点下获取统计数据的请求消息。S6: The comparison judgment module 303 acquires a request message of the statistical data to each node.
其中,请求消息用于请求各个节点获取到的染色数据包数量和第一染色数据包时戳。The request message is used to request the number of the dyed data packets acquired by each node and the first coloring data packet time stamp.
可选的,当节点为虚拟交换机时,如图6中的步骤S6.1所示,比较判断模块303将请求消息发送至数据转发模块304,数据转发模块304将请求消息转发至虚拟交换机。Optionally, when the node is a virtual switch, as shown in step S6.1 in FIG. 6, the comparison determining module 303 sends a request message to the data forwarding module 304, and the data forwarding module 304 forwards the request message to the virtual switch.
S7:VM1的统计模块302接收到请求消息后,向比较判断模块303发送自身统计的染色数据包数量和第一染色数据包时戳。S7: After receiving the request message, the statistic module 302 of the VM1 sends the number of the swatched data packets and the first smeared data packet timestamp to the comparison judgment module 303.
S8:虚拟交换机中的统计模块302接收到请求消息后,向数据转发模块304发送自身统计的染色数据包数量和第一染色数据包时戳,数据转发模块304向比较判断模块303发送染色数据包数量和第一染色数据包时戳。S8: After receiving the request message, the statistics module 302 in the virtual switch sends the number of the dyed data packets and the first coloring data packet time stamp of the statistics to the data forwarding module 304, and the data forwarding module 304 sends the coloring data packet to the comparison determining module 303. The number and time stamp of the first stained packet.
需要说明的是,由于虚拟交换机处于NFV系统中的虚拟网络中,与比较判断模块303之间不能直接通信,因此,在本发明实施例中,虚拟交换机中的统计模块302需要通过NFV系统中的VIM与比较判断模块303进行通信。It should be noted that, because the virtual switch is in the virtual network in the NFV system, and the comparison judgment module 303 cannot directly communicate with each other, in the embodiment of the present invention, the statistics module 302 in the virtual switch needs to pass through the NFV system. The VIM communicates with the comparison determination module 303.
可选的,虚拟交换机中的统计模块302可以通过VIM中的数据转发模块304向比较判断模块303发送自身统计的染色数据包数量和第一染色数据包时戳。Optionally, the statistics module 302 in the virtual switch may send the statistics of the number of the dyed data packets and the first coloring data packet to the comparison judgment module 303 through the data forwarding module 304 in the VIM.
S9:VM2中的统计模块302接收到请求消息后,向比较判断模块303发送自身统计的染色数据包数量和第一染色数据包时戳。S9: After receiving the request message, the statistic module 302 in the VM2 sends the number of the swatched data packets and the first smeared data packet timestamp to the comparison judgment module 303.
S10:比较判断模块303比较不同节点间统计的染色数据包数量和第一染色数据包的时戳的差异,确定节点间网络的丢包和时延问题。S10: The comparison judging module 303 compares the difference between the number of dyed data packets counted between different nodes and the time stamp of the first dyed data packet, and determines the packet loss and delay of the inter-node network.
可选的,比较判断模块303可以比较不同节点间统计的染色数据包数量的差异,根据该差异确定出节点间网络出现丢包问题;Optionally, the comparison determining module 303 can compare the difference in the number of the dyed data packets between different nodes, and determine, according to the difference, the packet loss problem occurs in the network between the nodes;
比较不同节点间统计的第一染色数据包的时戳的差异,根据该差异确定出节点间网络出现时延问题。Comparing the difference of the time stamps of the first dyed data packets between different nodes, and determining the delay time of the network between the nodes according to the difference.
S11:比较判断模块303向各个节点发送停止检测的通知消息。可选的,当节点为虚拟交换机时,如图6中的步骤S11.1所示,比较判断模块303将停止检测的通知消息发送至数据转发模块304,数据转发模块304将该通知消息发至虚拟交换机。S11: The comparison judging module 303 transmits a notification message of stopping detection to each node. Optionally, when the node is a virtual switch, as shown in step S11.1 in FIG. 6, the comparison determining module 303 sends a notification message that stops detecting to the data forwarding module 304, and the data forwarding module 304 sends the notification message to the Virtual switch.
其中,该通知消息用于通知各个节点停止数据传输质量的检测。The notification message is used to notify each node to stop the detection of the data transmission quality.
可理解的是,上述图6所示的过程仅描述了VM1经过一个虚拟交换机与VM2之间传输数据的检测,在实际应用环境中,传输路径会存在经过两个以上VM、以及多个虚拟交换机的情况,在这种情况下,数据传输检测装置中个各个模块具体处理过程和图6所示的过程 类似,在此不再详细赘述。It can be understood that the process shown in FIG. 6 only describes the detection of data transmitted between VM1 and VM2. In an actual application environment, the transmission path may exist through more than two VMs and multiple virtual switches. In this case, the specific processing of each module in the data transmission detecting device and the process shown in FIG. Similar, it will not be described in detail here.
由上可知,本发明实施例提供一种数据传输质量检测装置,对第一虚拟机VM发送的具有相同传输路径的多个数据包、以及第一数据包进行不同染色,在传输路径上的不同节点检测并统计所有染色数据包数量、以及第一染色数据包的时戳,比较不同节点检测到的染色数据包数量、以及第一染色数据包时戳的差异,根据差异判断不同节点间的丢包和时延问题。如此,可以通过对数据包的染色、识别和统计,比较不同节点间发送的数据包数量和时戳的差异,进而可以根据该差异确定出节点间的丢包时延问题,以便采取相应措施恢复整个业务。As can be seen from the above, the embodiment of the present invention provides a data transmission quality detecting apparatus, which performs different coloring on a plurality of data packets and a first data packet having the same transmission path sent by the first virtual machine VM, and different in the transmission path. The node detects and counts the number of all dyed data packets and the time stamp of the first dyed data packet, compares the number of dyed data packets detected by different nodes, and the difference of the timestamp of the first colored data packet, and judges the loss between different nodes according to the difference. Package and latency issues. In this way, by comparing the data packet, the identification and the statistics, the difference between the number of data packets sent by different nodes and the time stamp can be compared, and then the packet loss delay between the nodes can be determined according to the difference, so that corresponding measures can be taken to recover. The entire business.
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的单元和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。A person skilled in the art can clearly understand that, for the convenience and brevity of the description, the specific working process of the above-mentioned unit and device can refer to the corresponding process in the foregoing method embodiment, and details are not described herein again.
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。In the several embodiments provided in the present application, it should be understood that the disclosed apparatus, apparatus, and method may be implemented in other manners. For example, the device embodiments described above are merely illustrative. For example, the division of the unit is only a logical function division. In actual implementation, there may be another division manner, for example, multiple units or components may be combined or It can be integrated into another device, or some features can be ignored or not executed.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。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 purpose of the solution of the embodiment.
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may be physically separate, or two or more units may be integrated into one unit. The above integrated unit can be implemented in the form of hardware or in the form of hardware plus software functional units.
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。The above-described integrated unit implemented in the form of a software functional unit can be stored in a computer readable storage medium. The software functional units described above are stored in a storage medium and include instructions for causing a computer device (which may be a personal computer, server, or network device, etc.) to perform portions of the steps of 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, and the program code can be stored. Medium.
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件(例如处理器)来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器、随机存储器、磁盘或光盘等。A person of ordinary skill in the art may understand that all or part of the steps of the foregoing embodiments may be completed by a program to instruct related hardware (for example, a processor), and the program may be stored in a computer readable storage medium. The storage medium may include a read only memory, a random access memory, a magnetic disk or an optical disk, or the like.
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。 It should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and are not limited thereto; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that The technical solutions described in the foregoing embodiments are modified, or the equivalents of the technical features are replaced. The modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims (24)

  1. 一种数据传输质量检测方法,应用于网络功能虚拟化NFV系统,其特征在于,所述方法包括:A data transmission quality detection method is applied to a network function virtualization NFV system, characterized in that the method comprises:
    对第一虚拟机VM发送的多个数据包进行染色,所述多个数据包具有相同传输路径;Sampling a plurality of data packets sent by the first virtual machine VM, the multiple data packets having the same transmission path;
    在所述传输路径上的不同节点检测并统计染色数据包的数量,所述染色数据包为所述多个数据包中被染色的数据包;Detecting and counting the number of dyed data packets at different nodes on the transmission path, the dyed data packets being data packets dyed in the plurality of data packets;
    比较不同节点检测到的染色数据包的数量的差异,根据所述差异判断所述不同节点间的网络质量。Comparing the differences in the number of dye packets detected by different nodes, and determining the network quality between the different nodes according to the difference.
  2. 根据权利要求1所述的方法,其特征在于,所述数据包为IP数据包,所述对第一虚拟机VM发送的多个数据包进行染色,包括:The method according to claim 1, wherein the data packet is an IP data packet, and the plurality of data packets sent by the first virtual machine VM are dyed, including:
    在所述IP数据包包头的生存时间TTL字段内填充染色标识,所述染色标识用于识别出被染色的IP数据包。A dyeing identifier is filled in the time-to-live TTL field of the IP packet header, and the dye identifier is used to identify the dyed IP packet.
  3. 根据权利要求1所述的方法,其特征在于,所述数据包为以太网数据包,所述对第一虚拟机VM发送的多个数据包进行染色,包括:The method according to claim 1, wherein the data packet is an Ethernet data packet, and the plurality of data packets sent by the first virtual machine VM are dyed, including:
    在所述以太网数据包包头的预设偏移字段内填充染色标识,所述染色标识用于识别出被染色的以太网数据包。A dyeing identifier is filled in a preset offset field of the Ethernet packet header for identifying the stained Ethernet packet.
  4. 根据权利要求1-3任一项所述的方法,其特征在于,所述对第一虚拟机VM发送的多个数据包进行染色具体包括:The method according to any one of claims 1-3, wherein the coloring the plurality of data packets sent by the first virtual machine VM comprises:
    所述第一VM在多个连续时间段发送数据包,其中,同一时间段发送的数据包的染色标识相同,相邻时间段发送的数据包的染色标识不同。The first VM sends a data packet in a plurality of consecutive time periods, wherein the data packets sent by the same time period have the same dyeing identifier, and the data packets sent by the adjacent time segments have different dyeing identifiers.
  5. 根据权利要求1-4任一项所述的方法,其特征在于,A method according to any one of claims 1 to 4, characterized in that
    所述传输路径为:从所述第一VM经过第一虚拟交换机到第二VM的路径,所述第二VM、所述第一虚拟交换机、以及所述第一VM处于同一主机;The transmission path is: a path from the first VM to the second VM through the first virtual switch, the second VM, the first virtual switch, and the first VM are in the same host;
    或者,所述传输路径为:从所述第一VM经过第一虚拟交换机到第二虚拟交换机、从所述第二虚拟交换机到第二VM的路径,所述第一VM与所述第一虚拟交换机位于第一主机,所述第二VM与所述第二虚拟交换机位于第二主机;Or the transmission path is: a path from the first VM to the second virtual switch, the second virtual switch to the second VM, the first VM and the first virtual The switch is located at the first host, and the second VM and the second virtual switch are located at the second host;
    其中,所述第一VM、所述第二VM位于所述NFV系统中的虚拟网络功能VNF实体中;The first VM and the second VM are located in a virtual network function VNF entity in the NFV system;
    所述第一虚拟交换机、所述第二虚拟交换机位于所述NFV系统中网络功能虚拟化基础设施NFVI的虚拟网络中。The first virtual switch and the second virtual switch are located in a virtual network of the network function virtualization infrastructure NFVI in the NFV system.
  6. 根据权利要求1-5任一项所述的方法,其特征在于,所述比较不同节点间检测到的染色数据包的数量的差异,根据所述差异判断所述不同节点间的网络质量,包括:The method according to any one of claims 1 to 5, wherein the comparing the difference in the number of dyed data packets detected between different nodes, and determining the network quality between the different nodes according to the difference, including :
    若第一节点检测到的染色数据包的数量大于第二节点检测到的染色数据包的数量,则确定所述第一节点与所述第二节点之间存在丢包问题;If the number of the dyed data packets detected by the first node is greater than the number of the dyed data packets detected by the second node, determining that there is a packet loss problem between the first node and the second node;
    所述第一节点为所述第一VM,所述第二节点为所述传输路径除所述第一VM之外的任一节点。The first node is the first VM, and the second node is any node except the first VM of the transmission path.
  7. 一种数据传输质量检测方法,应用于网络功能虚拟化NFV系统,其特征在于,所述方法包括:A data transmission quality detection method is applied to a network function virtualization NFV system, characterized in that the method comprises:
    对第一虚拟机VM发送的多个数据包中的第一数据包进行染色,所述多个数据包具有相 同传输路径;Sampling a first one of the plurality of data packets sent by the first virtual machine VM, the plurality of data packets having phases Same transmission path;
    在所述传输路径上的不同节点检测并统计第一染色数据包的时戳,所述第一染色数据包为被染色的第一数据包;Detecting and counting time stamps of the first dyed data packet at different nodes on the transmission path, the first dyed data packet being the first data packet being dyed;
    比较不同节点检测到的所述第一染色数据包的时戳的差异,根据所述差异判断所述不同节点间的网络质量。Comparing the difference of time stamps of the first dyed data packets detected by different nodes, and determining the network quality between the different nodes according to the difference.
  8. 根据权利要求7所述的方法,其特征在于,所述第一数据包为IP数据包,所述对第一虚拟机VM发送的多个数据包中的第一数据包进行染色,包括:The method according to claim 7, wherein the first data packet is an IP data packet, and the first data packet of the plurality of data packets sent by the first virtual machine VM is dyed, including:
    在所述IP数据包包头的生存时间TTL字段内填充第一染色标识,所述第一染色标识用于识别出所述第一数据包。Filling a first coloring identifier in a time-to-live TTL field of the IP packet header, the first coloring identifier is used to identify the first data packet.
  9. 根据权利要求7所述的方法,其特征在于,所述第一数据包为以太网数据包,所述对第一虚拟机VM发送的多个数据包中的第一数据包进行染色,包括:The method according to claim 7, wherein the first data packet is an Ethernet data packet, and the first data packet of the plurality of data packets sent by the first virtual machine VM is dyed, including:
    在所述第一以太网数据包包头的预设偏移字段内填充第一染色标识,所述第一染色标识用于识别出所述第一数据包。Filling a first coloring identifier in a preset offset field of the first Ethernet packet header, the first coloring identifier is used to identify the first data packet.
  10. 根据权利要求7-9任一项所述的方法,其特征在于,所述对第一虚拟机VM发送的多个数据包中的第一数据包进行染色具体包括:The method according to any one of claims 7-9, wherein the coloring the first data packet of the plurality of data packets sent by the first virtual machine VM comprises:
    所述第一VM在多个连续时间段发送数据包,其中,同一时间段发送的第一数据包用第一染色标识染色,同一时间段发送的除所述第一数据包之外的其他所有数据包用第二染色标识染色,相邻时间段发送的第一数据包的染色标识不同。The first VM sends a data packet in a plurality of consecutive time periods, wherein the first data packet sent in the same time period is dyed with the first coloring identifier, and all but the first data packet sent in the same time period The data packet is dyed with the second staining identifier, and the dyeing identifier of the first data packet sent in the adjacent time period is different.
  11. 根据权利要求7-10任一项所述的方法,其特征在于,A method according to any one of claims 7 to 10, wherein
    所述传输路径为:从所述第一VM经过第一虚拟交换机到第二VM的路径,所述第二VM、所述第一虚拟交换机、以及所述第一VM处于同一主机;The transmission path is: a path from the first VM to the second VM through the first virtual switch, the second VM, the first virtual switch, and the first VM are in the same host;
    或者,所述传输路径为:从所述第一VM经过第一虚拟交换机到第二虚拟交换机、从所述第二虚拟交换机到第二VM的路径,所述第一VM与所述第一虚拟交换机位于第一主机,所述第二VM与所述第二虚拟交换机位于第二主机;Or the transmission path is: a path from the first VM to the second virtual switch, the second virtual switch to the second VM, the first VM and the first virtual The switch is located at the first host, and the second VM and the second virtual switch are located at the second host;
    其中,所述第一VM、所述第二VM位于所述NFV系统中的虚拟网络功能VNF实体内;The first VM and the second VM are located in a virtual network function VNF entity in the NFV system;
    所述第一虚拟交换机、所述第二虚拟交换机位于所述NFV系统中网络功能虚拟化基础设施NFVI的虚拟网络内。The first virtual switch and the second virtual switch are located in a virtual network of the network function virtualization infrastructure NFVI in the NFV system.
  12. 根据权利要求7-11任一项所述的方法,其特征在于,所述比较不同节点检测到的所述第一染色数据包的时戳的差异,根据所述差异判断所述不同节点间的网络质量,包括:The method according to any one of claims 7 to 11, wherein the comparing the difference of time stamps of the first dyed data packets detected by different nodes, determining the difference between the different nodes according to the difference Network quality, including:
    若第一节点与第二节点间检测到的所述第一染色数据包的时戳的差值大于第三节点与第四节点间检测到的所述第一染色数据包的时戳的差值,则确定所述第一节点与所述第二节点间的传输时延大于所述第三节点与所述第四节点间的传输时延。If the difference between the time stamps of the first coloring data packets detected between the first node and the second node is greater than the difference between the time stamps of the first coloring data packets detected between the third node and the fourth node And determining, that the transmission delay between the first node and the second node is greater than a transmission delay between the third node and the fourth node.
  13. 一种数据传输质量检测装置,其特征在于,所述装置包括:染色模块、统计模块、比较判断模块;A data transmission quality detecting device, comprising: a dyeing module, a statistics module, and a comparison judging module;
    所述染色模块位于网络功能虚拟化NFV系统中的第一虚拟机VM中,所述染色模块,用于对所述第一VM发送的多个数据包进行染色,所述多个数据包具有相同传输路径;The coloring module is located in a first virtual machine VM in the network function virtualization NFV system, and the coloring module is configured to perform coloring on multiple data packets sent by the first VM, where the multiple data packets have the same Transmission path
    所述统计模块位于所述传输路径上的不同节点内,所述统计模块用于检测并统计自身所处节点接收到的染色数据包的数量,所述染色数据包为所述多个数据包中被染色的数据包;The statistic module is located in different nodes on the transmission path, and the statistic module is configured to detect and count the number of dye data packets received by the node where the node is located, where the dye data packet is in the multiple data packets. Stained data packet;
    所述比较判断模块,用于比较不同节点内的统计模块检测到的染色数据包的数量的差异, 根据所述差异判断所述不同节点间的网络质量。The comparison judging module is configured to compare differences in the number of dye packets detected by the statistical module in different nodes, Determining the network quality between the different nodes according to the difference.
  14. 根据权利要求13所述的装置,其特征在于,所述数据包为IP数据包,所述染色模块,具体用于:The device according to claim 13, wherein the data packet is an IP data packet, and the coloring module is specifically configured to:
    在所述IP数据包包头的生存时间TTL字段内填充染色标识,所述染色标识用于识别出被染色的IP数据包。A dyeing identifier is filled in the time-to-live TTL field of the IP packet header, and the dye identifier is used to identify the dyed IP packet.
  15. 根据权利要求13所述的装置,其特征在于,所述数据包为以太网数据包,所述染色模块,具体用于:The device according to claim 13, wherein the data packet is an Ethernet data packet, and the coloring module is specifically configured to:
    在所述以太网数据包包头的预设偏移字段内填充染色标识,所述染色标识用于识别出被染色的以太网数据包。A dyeing identifier is filled in a preset offset field of the Ethernet packet header for identifying the stained Ethernet packet.
  16. 根据权利要求13-15任一项所述的装置,其特征在于,所述染色模块,具体用于:The device according to any one of claims 13 to 15, wherein the dyeing module is specifically configured to:
    对所述第一VM在多个连续时间段发送的数据包染色,其中,同一时间段发送的数据包的染色标识相同,相邻时间段发送的数据包的染色标识不同。The data packets sent by the first VM in a plurality of consecutive time periods are dyed, wherein the data packets sent by the same time period have the same dyeing identifier, and the data packets sent by the adjacent time segments have different dyeing identifiers.
  17. 根据权利要求13-16任一项所述的装置,其特征在于,Apparatus according to any of claims 13-16, wherein
    所述传输路径为:从所述第一VM经过第一虚拟交换机到第二VM的路径,所述第二VM、所述第一虚拟交换机、以及所述第一VM处于同一主机;The transmission path is: a path from the first VM to the second VM through the first virtual switch, the second VM, the first virtual switch, and the first VM are in the same host;
    或者,所述传输路径为:从所述第一VM经过第一虚拟交换机到第二虚拟交换机、从所述第二虚拟交换机到第二VM的路径,所述第一VM与所述第一虚拟交换机位于第一主机,所述第二VM与所述第二虚拟交换机位于第二主机;Or the transmission path is: a path from the first VM to the second virtual switch, the second virtual switch to the second VM, the first VM and the first virtual The switch is located at the first host, and the second VM and the second virtual switch are located at the second host;
    其中,所述第一VM、所述第二VM位于所述NFV系统中的虚拟网络功能VNF实体中;The first VM and the second VM are located in a virtual network function VNF entity in the NFV system;
    所述第一虚拟交换机、所述第二虚拟交换机位于所述NFV系统中网络功能虚拟化基础设施NFVI的虚拟网络中。The first virtual switch and the second virtual switch are located in a virtual network of the network function virtualization infrastructure NFVI in the NFV system.
  18. 根据权利要求13-17任一项所述的装置,其特征在于,所述比较判断模块,具体用于:The device according to any one of claims 13-17, wherein the comparison determining module is specifically configured to:
    若第一节点检测到的染色数据包的数量大于第二节点检测到的染色数据包的数量,则确定所述第一节点与所述第二节点之间存在丢包问题;If the number of the dyed data packets detected by the first node is greater than the number of the dyed data packets detected by the second node, determining that there is a packet loss problem between the first node and the second node;
    所述第一节点为所述第一VM,所述第二节点为所述传输路径除所述第一VM之外的任一节点。The first node is the first VM, and the second node is any node except the first VM of the transmission path.
  19. 一种数据传输质量检测装置,其特征在于,所述装置包括:染色模块、统计模块、比较判断模块;A data transmission quality detecting device, comprising: a dyeing module, a statistics module, and a comparison judging module;
    所述染色模块位于网络功能虚拟化NFV系统中的第一虚拟机VM中,所述染色模块,用于对第一虚拟机VM发送的多个数据包中第一数据包进行染色,所述多个数据包具有相同传输路径;The coloring module is located in a first virtual machine VM in the network function virtualization NFV system, and the coloring module is configured to perform coloring on the first data packet in the plurality of data packets sent by the first virtual machine VM, where the multiple Packets have the same transmission path;
    所述统计模块位于所述传输路径上的不同节点内,所述统计模块,用于检测并统计自身所处节点接收到的第一染色数据包的时戳,所述第一染色数据包为被染色第一数据包;The statistic module is located in a different node on the transmission path, and the statistic module is configured to detect and count a time stamp of the first dyed data packet received by the node where the node is located, where the first coloring data packet is Dyeing the first data packet;
    所述比较判断模块,用于比较不同节点内统计模块检测到的所述第一染色数据包的时戳的差异,根据所述差异判断所述不同节点间的网络质量。The comparison judging module is configured to compare differences in time stamps of the first dyed data packets detected by the statistics modules in different nodes, and determine network quality between the different nodes according to the differences.
  20. 根据权利要求19所述的装置,其特征在于,所述第一数据包为IP数据包,所述染色模块,具体用于:The device according to claim 19, wherein the first data packet is an IP data packet, and the coloring module is specifically configured to:
    在所述IP数据包包头的生存时间TTL字段内填充第一染色标识,所述第一染色标识用 于识别出所述第一数据包。Filling a first dye identifier in a time-to-live TTL field of the IP packet header, where the first dye identifier is used The first data packet is identified.
  21. 根据权利要求19所述的装置,其特征在于,所述第一数据包为以太网数据包,所述染色模块,具体用于:The device according to claim 19, wherein the first data packet is an Ethernet data packet, and the coloring module is specifically configured to:
    在所述第一以太网数据包包头的预设偏移字段内填充第一染色标识,所述第一染色标识用于识别出所述第一数据包。Filling a first coloring identifier in a preset offset field of the first Ethernet packet header, the first coloring identifier is used to identify the first data packet.
  22. 根据权利要求19-21任一项所述的装置,其特征在于,所述染色模块,具体用于:The device according to any one of claims 19 to 21, wherein the dyeing module is specifically configured to:
    对所述第一VM在多个连续时间段发送的数据包进行染色,其中,同一时间段发送的第一数据包用第一染色标识染色,同一时间段发送的除所述第一数据包之外的其他所有数据包用第二染色标识染色,相邻时间段发送的第一数据包的染色标识不同。And filtering the data packet sent by the first VM in a plurality of consecutive time periods, wherein the first data packet sent in the same time period is colored by the first coloring identifier, and the first data packet sent in the same time period is All other data packets are dyed with the second staining identifier, and the dyeing identifier of the first data packet sent in the adjacent time period is different.
  23. 根据权利要求19-22任一项所述的装置,其特征在于,A device according to any one of claims 19-22, wherein
    所述传输路径为:从所述第一VM经过第一虚拟交换机到第二VM的路径,所述第二VM、所述第一虚拟交换机、以及所述第一VM处于同一主机;The transmission path is: a path from the first VM to the second VM through the first virtual switch, the second VM, the first virtual switch, and the first VM are in the same host;
    或者,所述传输路径为:从所述第一VM经过第一虚拟交换机到第二虚拟交换机、从所述第二虚拟交换机到第二VM的路径,所述第一VM与所述第一虚拟交换机位于第一主机,所述第二VM与所述第二虚拟交换机位于第二主机;Or the transmission path is: a path from the first VM to the second virtual switch, the second virtual switch to the second VM, the first VM and the first virtual The switch is located at the first host, and the second VM and the second virtual switch are located at the second host;
    其中,所述第一VM、所述第二VM位于所述NFV系统中的虚拟网络功能VNF实体内;The first VM and the second VM are located in a virtual network function VNF entity in the NFV system;
    所述第一虚拟交换机、所述第二虚拟交换机位于所述NFV系统中网络功能虚拟化基础设施NFVI的虚拟网络内。The first virtual switch and the second virtual switch are located in a virtual network of the network function virtualization infrastructure NFVI in the NFV system.
  24. 根据权利要求19-23任一项所述的装置,其特征在于,所述比较判断模块,具体用于:The device according to any one of claims 19 to 23, wherein the comparison determining module is specifically configured to:
    若第一节点与第二节点间检测到的所述第一染色数据包的时戳的差值大于第三节点与第四节点间检测到的所述第一染色数据包的时戳的差值,则确定所述第一节点与所述第二节点间的传输时延大于所述第三节点与所述第四节点间的传输时延。 If the difference between the time stamps of the first coloring data packets detected between the first node and the second node is greater than the difference between the time stamps of the first coloring data packets detected between the third node and the fourth node And determining, that the transmission delay between the first node and the second node is greater than a transmission delay between the third node and the fourth node.
PCT/CN2017/091280 2016-08-04 2017-06-30 Data transmission quality detection method and device WO2018024063A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610634978.2A CN106130825A (en) 2016-08-04 2016-08-04 A kind of data transmission quality detection method and device
CN201610634978.2 2016-08-04

Publications (1)

Publication Number Publication Date
WO2018024063A1 true WO2018024063A1 (en) 2018-02-08

Family

ID=57254640

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/091280 WO2018024063A1 (en) 2016-08-04 2017-06-30 Data transmission quality detection method and device

Country Status (2)

Country Link
CN (1) CN106130825A (en)
WO (1) WO2018024063A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024001321A1 (en) * 2022-06-30 2024-01-04 中兴通讯股份有限公司 Network fault diagnosis method and device, and storage medium

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106130825A (en) * 2016-08-04 2016-11-16 华为技术有限公司 A kind of data transmission quality detection method and device
WO2018094616A1 (en) * 2016-11-23 2018-05-31 华为技术有限公司 Method, device, and virtual network system for monitoring virtual network
CN109714221B (en) * 2017-10-25 2022-11-01 阿里巴巴集团控股有限公司 Method, device and system for determining network data packet
CN108809771A (en) * 2018-08-10 2018-11-13 锐捷网络股份有限公司 SDN network data stream monitoring method, SDN controllers, switching equipment and system
WO2021051418A1 (en) * 2019-09-21 2021-03-25 Huawei Technologies Co., Ltd. Methods and network nodes for reliability measurement
CN110784342B (en) * 2019-10-14 2022-02-08 广州江南科友科技股份有限公司 Resource scanning method, device, medium and terminal equipment
CN112702218A (en) * 2019-10-22 2021-04-23 中兴通讯股份有限公司 Method, system, network device and storage medium for detecting data transmission quality
CN111740878A (en) * 2020-06-08 2020-10-02 中国工商银行股份有限公司 Network access detection method and node
TWI804371B (en) * 2022-06-30 2023-06-01 和碩聯合科技股份有限公司 Transmission delay detection method and transmission delay detection system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008116482A1 (en) * 2007-03-26 2008-10-02 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for performance monitoring in a communications network
US20090150538A1 (en) * 2007-12-10 2009-06-11 Sun Microsystems, Inc. Method and system for monitoring virtual wires
CN102308525A (en) * 2008-12-22 2012-01-04 意大利电信股份公司 Measurement of data loss in a communication network
CN105072629A (en) * 2015-06-30 2015-11-18 华为技术有限公司 Method, equipment and system for measuring quality of business at terminal
CN106130825A (en) * 2016-08-04 2016-11-16 华为技术有限公司 A kind of data transmission quality detection method and device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008116482A1 (en) * 2007-03-26 2008-10-02 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for performance monitoring in a communications network
US20090150538A1 (en) * 2007-12-10 2009-06-11 Sun Microsystems, Inc. Method and system for monitoring virtual wires
CN102308525A (en) * 2008-12-22 2012-01-04 意大利电信股份公司 Measurement of data loss in a communication network
CN105072629A (en) * 2015-06-30 2015-11-18 华为技术有限公司 Method, equipment and system for measuring quality of business at terminal
CN106130825A (en) * 2016-08-04 2016-11-16 华为技术有限公司 A kind of data transmission quality detection method and device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024001321A1 (en) * 2022-06-30 2024-01-04 中兴通讯股份有限公司 Network fault diagnosis method and device, and storage medium

Also Published As

Publication number Publication date
CN106130825A (en) 2016-11-16

Similar Documents

Publication Publication Date Title
WO2018024063A1 (en) Data transmission quality detection method and device
EP3482532B1 (en) Automatic service function validation in a virtual network environment
US20190260657A1 (en) In-band performance loss measurement in ipv6/srv6 software defined networks
US10135735B2 (en) Method and system for managing flows in a network
WO2019238004A1 (en) Alarm method and device
EP4024780A1 (en) Path detection method and apparatus, and computer storage medium
EP2681878B1 (en) Technique for managing an allocation of a vlan
US20220078106A1 (en) Packet Measurement Method, Device, and System
US8625435B2 (en) Generating and allocating performance monitoring traffic
EP3624401B1 (en) Systems and methods for non-intrusive network performance monitoring
US10680944B2 (en) Arbitrating mastership between redundant control planes of a virtual node
CN109428782B (en) Network monitoring method and equipment
WO2017032223A1 (en) Virtual machine deployment method and apparatus
JP2022532731A (en) Avoiding congestion in slice-based networks
EP3340537B1 (en) Deadlock avoidance using modified ethernet connectivity fault management signaling
WO2017067408A1 (en) Methods for sending and receiving messages, and network equipment
CN108512779B (en) Control information transmission method, server and system
CN114513429A (en) Transmission method for detection message, and method and equipment for determining reverse path
CN103825819A (en) Methods and devices for sending and receiving messages
CN111711536A (en) Method for constructing firewall test environment under cloud architecture
WO2017133020A1 (en) Method and device for policy transmission in nfv system
WO2021103657A1 (en) Network operation method, apparatus, and device and storage medium
WO2021147358A1 (en) Network interface establishing method, apparatus, and system
WO2023046026A1 (en) Containerized vnf deployment method and apparatus
US9432275B2 (en) Transmission monitoring method and device

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

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

Country of ref document: EP

Kind code of ref document: A1