Method, device and system for detecting transmission of a packet
By transmitting messages containing processing identification information and detection headers between network devices, the problem that IFIT technology cannot detect the performance of service flow transmission across VPNs is solved, enabling flexible detection across network domains and improving the accuracy and wide application of detection.
Patent Information
- Application Number
- CN202110315772.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-03-24
- Publication Date
- 2026-01-09
- Estimated Expiration
- 2041-03-24
AI Technical Summary
Existing IFIT technology cannot detect the transmission performance of business flows between devices inside and outside the VPN, resulting in limited application scenarios and poor flexibility.
After receiving the detection message, the first network device generates a second message including processing identification information and a detection header, and sends it to a second network device that does not belong to the same network domain. This allows the second network device to process the detection header according to the processing identification information, thereby enabling cross-network domain service flow transmission performance detection.
It improves the flexibility of service flow transmission performance testing, enabling transmission performance testing between devices inside and outside the VPN, and has a wide range of applications.
Smart Images

Figure CN115208781B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the network technical field, and in particular to a method, device and system for detecting a message transmission. BACKGROUND
[0002] The in-situ flow information telemetry (IFIT) technology is an important detection technology, and the detection principle of the IFIT technology is that an IFIT header is inserted into a service message, and the transmission performance of a service flow is detected according to the IFIT header in the service message. For example, in a virtual private network (VPN) scenario, a tunnel is usually created in the VPN to transmit a service flow, and the transmission performance of the service flow in which the service message is located can be detected according to the IFIT header in the service message transmitted through the tunnel. The transmission performance of the service flow includes, for example, the packet loss amount or the transmission delay of the service flow.
[0003] In the IFIT technology based on the VPN, after a head node device of the tunnel receives a service message, if the information (for example, the five-tuple) of the service message matches the information of a service flow to be detected, the head node device generates a flow identity (flow ID) for the service flow in which the service message is located, inserts an IFIT header into the service message, and records the flow ID into the IFIT header to obtain an IFIT message. Then, the head node device forwards the IFIT message to an intermediate node device of the tunnel, and the intermediate node device forwards the IFIT message to a tail node device of the tunnel, and the tail node device strips the IFIT header in the IFIT message. In the above process, the head node device, the intermediate node device and the tail node device respectively count the performance information of the service flow in which the IFIT message is located according to the flow ID in the IFIT header to detect the transmission performance of the service flow.
[0004] The current IFIT technology can realize the transmission performance detection of the service flow transmitted in the VPN. Since the IFIT header in the IFIT message is stripped by the tail node device of the tunnel in the process of transmitting the IFIT message out of the VPN, the IFIT header is not carried in the service message transmitted out of the VPN, which leads to the fact that the current IFIT technology cannot realize the transmission performance detection of the service flow between the VPN and the device outside the VPN. Therefore, the application scenario of the current IFIT technology is limited, and the flexibility is poor. SUMMARY
[0005] The present application provides a method, device and system for detecting a message transmission. The present application helps to improve the flexibility of detecting the transmission performance of a service flow, and the application scenario is wide. The technical solutions of the present application are as follows:
[0006] In a first aspect, a method for detecting transmission performance of a packet is provided. The method comprises: receiving, by a first network device, a first packet, the first packet comprising a detection header, the detection header being used to instruct a network device to detect transmission performance of a service flow to which the first packet belongs according to the detection header, the first network device being an edge network device of a first network domain; obtaining, by the first network device, a second packet from the first packet, the second packet comprising processing identification information and the detection header, the processing identification information being used to instruct a second network device to process the detection header, the second network device being a next-hop device of the first network device on a transmission path of the service flow, the second network device not belonging to the first network domain; and sending, by the first network device, the second packet to the second network device.
[0007] In the first aspect, the first network device being an edge network device of the first network domain means that the first network device belongs to the first network domain and is located at an edge of the first network domain.
[0008] In the first aspect, the first network device being an edge network device of the first network domain means that the first network device belongs to the first network domain and is located at an edge of the first network domain.
[0009] In the first aspect, the second packet further comprises a media access control (MAC) header and an internet protocol (IP) header, and the processing identification information and the detection header are located between the MAC header and the IP header.
[0010] In the first aspect, the processing identification information and the detection header are distributed between the MAC header and the IP header in a direction from close to the MAC header to far away from the MAC header, and the processing identification information and the detection header are adjacent.
[0011] In the first aspect, the processing identification information comprises an instruction identification and a detection identification, the instruction identification being used to instruct the second network device to process the detection identification, and the detection identification being used to instruct the second network device to process the detection header.
[0012] In the first aspect, the instruction identification and the detection identification are distributed between the MAC header and the detection header in the direction from close to the MAC header to far away from the MAC header, and the instruction identification and the detection identification are adjacent.
[0013] Optionally, the detection header is an IFIT header.
[0014] The technical solution provided in the application can realize the detection of the transmission performance of the service flow according to the flow, and help improve the accuracy of the detection result.
[0015] Optionally, the second network device is an edge network device of the second network domain. That is, the second network device belongs to the second network domain and the first network device is at the edge of the second network domain.
[0016] After the first network device belonging to the first network domain and at the edge of the first network domain receives the first message including the detection header, the technical solution provided in the application obtains the second message including the processing identification information and the detection header according to the first message, and sends the second message to the second network device belonging to the second network domain and at the edge of the second network domain, so that the second network device processes the detection header according to the indication of the processing identification information, to detect the transmission performance of the service flow where the first message is located according to the detection header, thereby realizing the detection of the transmission performance of the service flow transmitted across the network domains.
[0017] Optionally, the first network device is a tail node device of a first tunnel belonging to the first network domain, and the second network device is a head node device of a second tunnel belonging to the second network domain, and the first tunnel and the second tunnel are respectively a section of tunnel on a transmission path.
[0018] Optionally, at least one of the first network domain and the second network domain is a VPN. For example, the first network domain and the second network domain are both VPNs, and the first tunnel and the second tunnel are both VPN tunnels.
[0019] The technical solution provided in the application can realize the detection of the transmission performance of the service flow between the devices in the VPN and the devices outside the VPN, for example, realize the detection of the transmission performance of the service flow transmitted across the VPN, and help improve the flexibility of detecting the transmission performance of the service flow, and has a wide application scenario.
[0020] Optionally, the method further includes: enabling, by the first network device, the capability of carrying the processing identification information and the detection header in the message sent out through the first interface of the first network device.
[0021] Correspondingly, the first network device sends the second message to the second network device, including: the first network device sends the second message to the second network device through the first interface of the first network device.
[0022] The technical scheme provided in the application is that the first network device carries processing identification information and detection header capability in a message sent out through a first interface of the first network device, so that the first network device can send a second message carrying the processing identification information and the detection header to a second network device through the first interface, so that the second network device can process the detection header according to the indication of the processing identification information, and detect the transmission performance of a service flow in which the first message is located according to the detection header.
[0023] In a second aspect, a method for detecting transmission of a message is provided, which includes: receiving, by a second network device, a second message sent by a first network device, the second message being obtained by the first network device according to a first message, the first message including a detection header used for indicating a network device to detect transmission performance of a service flow in which the first message is located according to the detection header, the second message including processing identification information and the detection header, the processing identification information being used for indicating the second network device to process the detection header, the first network device being an edge network device of a first network domain, the second network device being a next-hop device of the first network device on a transmission path of the service flow, and the second network device not belonging to the first network domain; and detecting, by the second network device, the transmission performance of the service flow according to the processing identification information and the detection header.
[0024] In the above technical scheme, the first network device being an edge network device of the first network domain means that the first network device belongs to the first network domain and is located at an edge of the first network domain.
[0025] The technical scheme provided in the application is that the first network device being an edge network device of the first network domain means that the first network device belongs to the first network domain and is located at an edge of the first network domain.
[0026] Optionally, the second message further includes a MAC header and an IP header, and the processing identification information and the detection header are located between the MAC header and the IP header.
[0027] Optionally, the processing identification information and the detection header are distributed between the MAC header and the IP header in a direction from close to the MAC header to far away from the MAC header, and the processing identification information and the detection header are adjacent.
[0028] Optionally, the processing identification information comprises an indication identification and a detection identification, the indication identification is used to indicate the second network device to process the detection identification, and the detection identification is used to indicate the second network device to process the detection header.
[0029] Optionally, the indication identification and the detection identification are distributed between the MAC header and the detection header in a direction from close to the MAC header to far away from the MAC header, and the indication identification and the detection identification are adjacent.
[0030] Optionally, the detection header is an IFIT header.
[0031] The technical scheme provided in the application can realize the flow detection of the transmission performance of the service flow, and help improve the accuracy of the detection result.
[0032] Optionally, the second network device is an edge network device of the second network domain. That is, the second network device belongs to the second network domain and the first network device is at the edge of the second network domain.
[0033] The technical scheme provided in the application can realize the detection of the transmission performance of the service flow transmitted across the network domains.
[0034] Optionally, the first network device is a tail node device of a first tunnel belonging to the first network domain, and the second network device is a head node device of a second tunnel belonging to the second network domain, and the first tunnel and the second tunnel are respectively a section of tunnel on a transmission path.
[0035] Optionally, at least one of the first network domain and the second network domain is a VPN. For example, the first network domain and the second network domain are both VPNs, and the first tunnel and the second tunnel are both VPN tunnels.
[0036] The technical scheme provided in the application can realize the detection of the transmission performance of the service flow between the devices in the VPN and the devices outside the VPN, for example, realize the detection of the transmission performance of the service flow transmitted across the VPN, and help improve the flexibility of detecting the transmission performance of the service flow, and has a wide application scenario.
[0037] Optionally, the method further comprises: enabling the second network device to identify the processing identification information and the detection header carried in the second message received through the second interface of the second network device.
[0038] Correspondingly, the second network device receives the second message sent by the first network device, comprising: the second network device receives the second message sent by the first network device through the second interface of the second network device.
[0039] The technical scheme provided in the present application enables the second network device to identify the processing identification information and the detection header carried in the second message received through the second interface of the second network device, so that the second network device can identify the processing identification information and the detection header carried in the second message after receiving the second message through the second interface, and process the detection header according to the indication of the processing identification information, thereby detecting the transmission performance of the service flow where the first message is located according to the detection header.
[0040] In a third aspect, a detection message transmission device is provided, which comprises various modules for executing the method provided in the first aspect or any optional mode of the first aspect. The modules can be realized based on software, hardware or a combination of software and hardware, and the modules can be combined or divided based on specific implementation.
[0041] In a fourth aspect, a detection message transmission device is provided, which comprises various modules for executing the method provided in the second aspect or any optional mode of the second aspect. The modules can be realized based on software, hardware or a combination of software and hardware, and the modules can be combined or divided based on specific implementation.
[0042] In a fifth aspect, a detection message transmission device is provided, comprising a memory and a processor.
[0043] The memory is used to store a computer program.
[0044] The processor is used to execute the computer program stored in the memory, so that the transmission device executes the detection message transmission method provided in the first aspect or any optional mode of the first aspect, or executes the detection message transmission method provided in the second aspect or any optional mode of the second aspect.
[0045] In a sixth aspect, a computer readable storage medium is provided, which stores a computer program. When the computer program is executed, the detection message transmission method provided in the first aspect or any optional mode of the first aspect is implemented, or the detection message transmission method provided in the second aspect or any optional mode of the second aspect is implemented.
[0046] In a seventh aspect, a computer program product is provided, which includes a program or code, when executed, implements the method for detecting the transmission of the packet as provided in the first aspect or any of the optional manners of the first aspect, or implements the method for detecting the transmission of the packet as provided in the second aspect or any of the optional manners of the second aspect.
[0047] In an eighth aspect, a chip is provided, which includes programmable logic circuit and / or program instructions, when the chip is running, is used to implement the method for detecting the transmission of the packet as provided in the first aspect or any of the optional manners of the first aspect, or implements the method for detecting the transmission of the packet as provided in the second aspect or any of the optional manners of the second aspect.
[0048] In a ninth aspect, a system for detecting the transmission of the packet is provided, which includes a first network device and a second network device.
[0049] The first network device includes the apparatus for detecting the transmission of the packet as provided in the third aspect, and the second network device includes the apparatus for detecting the transmission of the packet as provided in the fourth aspect; or at least one of the first network device and the second network device includes the apparatus for detecting the transmission of the packet as provided in the fifth aspect.
[0050] Optionally, the first network device is an edge network device of a first network domain, the second network device is a next hop device of the first network device on a transmission path of a service flow to which the first packet belongs, and the second network device does not belong to the first network domain.
[0051] Optionally, the second network device is an edge network device of a second network domain.
[0052] Optionally, at least one of the first network domain and the second network domain is a VPN.
[0053] The technical scheme provided in the application has the beneficial effects that:
[0054] The application provides a detection packet transmission method, device and system. A first network device is an edge network device of a first network domain, and a second network device is a next hop device of the first network device on a transmission path of a service flow to which a first packet belongs. The second network device does not belong to the first network domain. After the first network device receives the first packet including a detection header, the first network device obtains a second packet including processing identification information and the detection header according to the first packet, and sends the second packet to the second network device. The detection header is used to instruct the network device to detect transmission performance of the service flow to which the first packet belongs according to the detection header. The processing identification information is used to instruct the second network device to process the detection header. After the second network device receives the second packet, the second network device processes the detection header in the second packet according to the processing identification information in the second packet, so as to detect the transmission performance of the service flow to which the first packet belongs according to the detection header. Therefore, the detection of the transmission performance of the service flow between the first network device in the first network domain and the second network device outside the first network domain is realized, for example, the detection of the transmission performance of the service flow transmitted across network domains is realized. The application helps to improve the flexibility of detecting the transmission performance of the service flow, and has wide application scenarios. BRIEF DESCRIPTION OF DRAWINGS
[0055] Figure 1 is a schematic diagram of a communication network provided by an embodiment of the application;
[0056] Figure 2 is a schematic diagram of a detection header provided by an embodiment of the application;
[0057] Figure 3 is a schematic diagram of a detection packet provided by an embodiment of the application;
[0058] Figure 4 is a schematic diagram of another detection packet provided by an embodiment of the application;
[0059] Figure 5 is a flowchart of a detection packet transmission method provided by an embodiment of the application;
[0060] Figure 6 is a schematic diagram of still another detection packet provided by an embodiment of the application;
[0061] Figure 7 is a schematic diagram of yet another detection packet provided by an embodiment of the application;
[0062] Figure 8 is a schematic diagram of a detection packet transmission method provided by an embodiment of the application;
[0063] Figure 9 is a schematic diagram of another detection packet transmission method provided by an embodiment of the application;
[0064] Figure 10is a structural schematic diagram of a transmission device for detecting a packet provided by an embodiment of the present application.
[0065] Figure 11 is a structural schematic diagram of another transmission device for detecting a packet provided by an embodiment of the present application.
[0066] Figure 12 is a structural schematic diagram of still another transmission device for detecting a packet provided by an embodiment of the present application.
[0067] Figure 13 is a structural schematic diagram of yet another transmission device for detecting a packet provided by an embodiment of the present application. DETAILED DESCRIPTION
[0068] The embodiments of the present application will be further described in detail below with reference to the accompanying drawings.
[0069] Before the technical solutions of the embodiments of the present application are introduced, the application scenarios of the embodiments of the present application are introduced first.
[0070] The technical solutions provided by the embodiments of the present application are applied to a communication network, which includes a plurality of network devices connected. Optionally, the communication network further includes at least one controller, each controller being connected with at least one network device to control the at least one network device. The communication network may, for example, be a data center network (DCN), a metropolitan area network, a wide area network, or a campus network, etc.
[0071] In the embodiments of the present application, the communication network includes at least one network domain, each network domain including at least one network device in the communication network, each network domain including an edge network device, and further including a core network device. The edge network device may, for example, be a provider edge (PE) device, and the core network device may, for example, be a provider (P) device. Optionally, each network domain further includes a controller, the controller in each network domain being used to control the network devices in the network domain. The network domain may, for example, be a VPN. Here, the network domain is taken as an example of a VPN, and in the case where the communication network includes at least two VPNs, the at least two VPNs may be in a back-to-back (Option A) relationship, or in other words, the networking between the at least two VPNs is Option A networking. In other embodiments, the at least two VPNs may be in other relationships, which are not limited by the embodiments of the present application.
[0072] For example, refer to Figure 1 which shows a schematic diagram of a communication network provided by an embodiment of the present application. Figure 1 The network domain is taken as an example of a VPN. As shown in FIG. 1, the communication network includes two VPNs, VPN1 and VPN2.Figure 1 As shown in the figure, the communication network includes network devices PE1-PE4, P1, and controllers 100-300, and the communication network includes two network domains VPN1 and VPN2, and VPN1 and VPN2 are in the Option A relationship. As shown in the figure, PE1, PE2, P1, and controller 100 are located in VPN1, PE1 and PE2 are edge network devices of VPN1, P1 is a core network device of VPN1, and controller 100 is configured to control network devices (including PE1, PE2, and P1) in VPN1. PE3, PE4, and controller 200 are located in VPN2, PE3 and PE4 are edge network devices of VPN2, and controller 200 is configured to control network devices (including PE3 and PE4) in VPN2. Controller 300 is located outside VPN1 and VPN2, and controller 300 is configured to control controller 100 and controller 200 to control PE1-PE4 and P1 through controller 100 and controller 200. Figure 1 As shown in the figure, PE1, PE2, P1, and controller 100 are located in VPN1, PE1 and PE2 are edge network devices of VPN1, P1 is a core network device of VPN1, and controller 100 is configured to control network devices (including PE1, PE2, and P1) in VPN1. PE3, PE4, and controller 200 are located in VPN2, PE3 and PE4 are edge network devices of VPN2, and controller 200 is configured to control network devices (including PE3 and PE4) in VPN2. Controller 300 is located outside VPN1 and VPN2, and controller 300 is configured to control controller 100 and controller 200 to control PE1-PE4 and P1 through controller 100 and controller 200.
[0073] Among them, the controller (such as controllers 100-300) is the brain of the future cloud network, which integrates network management, service control, and network analysis functions, and is the core enabling system for realizing network resource pooling, network connection automation, and self-optimization, and operation and maintenance automation. The controller can be a functional module deployed in a server, or a server, or a server cluster composed of several servers, or a cloud computing service center. Among them, the server is also called a server, which is a device that provides computing services. Since the server needs to respond to service requests and process them, it generally has the ability to bear and guarantee services, and the server needs to have strong processing capability, high stability, high reliability, high security, scalability, and manageability. In the embodiments of the present application, the server can be an x86 server, which is also called a complex instruction set computer (CISC) architecture server, that is, the commonly used personal computer (PC) server, which is based on the PC architecture and uses an intel or other compatible x86 instruction set processor chip and a windows operating system. The x86 server has the advantages of low price and good compatibility.
[0074] In a possible implementation manner of the embodiment of the present application, the controller 100-300 is partially or entirely a functional module deployed in a server; for example, the controller 100-300 is three functional modules deployed in the same server, or the controller 100-200 is two functional modules deployed in the same server, and the controller 300 is one functional module deployed in another server. In another possible implementation manner of the embodiment of the present application, the controller 100-300 is partially or entirely a server respectively; for example, the controller 100-300 is a server respectively, or the controller 100-200 is a server respectively, and the controller 300 is a functional module deployed in another server. In still another possible implementation manner of the embodiment of the present application, the controller 100-300 is partially or entirely a server cluster respectively; for example, the controller 100-300 is a server cluster respectively, or the controller 100-200 belongs to one server cluster, and the controller 300 belongs to another server cluster, which is not limited in the embodiment of the present application.
[0075] The network device (for example, PE1-PE4 and P1) can be a switch, a router, a virtual switch or a virtual router, and the like, which is used for service forwarding in a communication network. The router is a hardware device that connects two or more networks, and functions as a gateway between the networks. The router is a special intelligent network device that can read the destination address in a message and determine how to transmit the message according to the destination address. The router can understand different protocols, for example, an Ethernet protocol used in a local area network, a transmission control protocol / internet protocol (TCP / IP) protocol used in the Internet, and the like. In this way, the router can analyze the destination address of the message from different types of networks, convert a non-TCP / IP address into a TCP / IP address, or vice versa, and transmit each message to a device corresponding to the destination address according to a selected routing algorithm. Therefore, the router can connect a non-TCP / IP network to the Internet. In the embodiment of the present application, PE1-PE4 and P1 can be the same network device, for example, PE1-PE4 and P1 are all routers; or PE1-PE4 and P1 can be different network devices, for example, part of PE1-PE4 and P1 are routers, and the other part are switches, which is not limited in the embodiment of the present application.
[0076] In some implementation scenarios, the VPN described in the embodiment of the present application can also be referred to as a VPN domain, a detection domain or a management domain. For example Figure 1As shown, VPN1 and VPN2 are respectively one VPN domain, one detection domain or one management domain. Controller 100 is an intra-domain controller of VPN1, controller 200 is an intra-domain controller of VPN2, and controller 300 can be an end to end (E2E) controller of VPN1 and VPN2. In addition, Figure 1 The communication network shown is only for example and is not intended to limit the technical solutions of the embodiments of the present application. In actual implementation, the number of network devices, the number of controllers, the number of VPNs and the relationship between VPNs in the communication network can be configured as needed. The communication network can also include workstations and other devices. In addition, the communication network can include multiple different types of network domains, for example, Figure 1 For example, both network domains in the communication network are VPNs. In other embodiments, the same communication network can include VPNs and other types of network domains, which are not limited by the embodiments of the present application.
[0077] The transmission path of the service flow in the communication network can transmit detection packets belonging to the service flow to detect the transmission performance of the service flow. The detection packets belonging to the service flow can be obtained by encapsulating a detection header in the service packets belonging to the service flow. For example, the detection packets can be obtained by encapsulating a detection header in the service packets belonging to the service flow and detection indication information indicating the detection header. The detection header is, for example, an IFIT header, or in some embodiments, the detection header and the detection indication information are collectively referred to as an IFIT header (i.e., the detection indication information can belong to the content of the detection header). The embodiments of the present application are not limited in this regard. The transmission path is also referred to as a forwarding path.
[0078] According to the service transmission requirements, the transmission path of the service flow can cross network domains (e.g., VPNs). For example, assuming that the network domain is a VPN, a part of the path segment (path segment refers to a segment of the transmission path) on the transmission path of the service flow is located in the VPN (e.g., VPN1), and another part of the path segment is located outside the VPN (e.g., VPN1), so that the transmission path of the service flow crosses the VPN. The path segment located outside the VPN (e.g., VPN1) can be located in another VPN (e.g., VPN2), or the path segment located outside the VPN (e.g., VPN1) can not be located in any VPN, but in other types of network domains, which are not limited by the embodiments of the present application.
[0079] Optionally, the path segment on the transmission path located in the network domain (for example, a VPN) is a tunnel, for example, but not limited to: a segment routing traffic engineering (SR-TE) tunnel, a resource reservation protocol-traffic engineering (RSVP-TE) tunnel based on traffic engineering extension, a segment routing policy (SR policy) tunnel, a segment routing internet protocol version 6 policy (SRv6 policy) tunnel, a label switched path (LSP) tunnel, a segment routing best effort (SR-BE) tunnel, or a segment routing internet protocol version 6 best effort (SRv6 BE) tunnel. Wherein, the tunnel includes a head node device, a tail node device, and a transit node device (also known as an intermediate node device) located between the head node device and the tail node device. In some implementation scenarios, the head node device is referred to as an ingress device or a head node, the tail node device is referred to as an egress device or a tail node, and the transit node device is referred to as a transit device or a transit node. According to the length of the tunnel, the tunnel can only include the head node device and the tail node device, and does not include the transit node device.
[0080] For example, as Figure 1As shown, the transmission path W1 of the service flow includes the tunnel 1 located in the VPN 1, the tunnel 2 located in the VPN 2, and the link 12 located between the VPN 1 and the VPN 2. The PE 1 is a head node device of the tunnel 1, the PE 2 is a tail node device of the tunnel 1, and the P 1 is an intermediate node device of the tunnel 1. The PE 3 is a head node device of the tunnel 2, and the PE 4 is a tail node device of the tunnel 2. The link 12 is a link between the PE 2 and the PE 3, and the link 12 can be a direct link or a non-direct link between the PE 2 and the PE 3. The tunnel 1, the tunnel 2, and the link 12 are path segments on the transmission path W1 respectively, each of the tunnel 1 and the tunnel 2 can be an SR-TE tunnel, an RSVP-TE tunnel, an SR policy tunnel, an SRv6 policy tunnel, an LSP tunnel, an SR-BE tunnel, or an SRv6 BE tunnel, and the types of the tunnel 1 and the tunnel 2 can be the same, for example, the tunnel 1 and the tunnel 2 are both SRv6 policy tunnels; or the types of the tunnel 1 and the tunnel 2 can be different, for example, the tunnel 1 is an SRv6 policy tunnel, and the tunnel 2 is an SR-TE tunnel, and the embodiments of the present application do not limit this.
[0081] The IFIT technology is a high-sensitivity in-stream detection technology. The detection principle of the IFIT technology is: inserting an IFIT header (for example, inserting an IFIT header and detection indication information for indicating the IFIT header in a service packet) in the service packet, and detecting the transmission performance of the service flow in which the service packet is located according to the IFIT header in the service packet. The IFIT header only carries basic field information, ensuring that the IFIT header brings the least expansion to the service packet. The IFIT technology detects the transmission performance of the service flow based on the real service packet, so that the transmission performance of the service flow detected based on the IFIT technology can reflect the actual transmission performance of the service flow, and the sensitivity of the IFIT technology is high.
[0082] In the IFIT technology, after a head node device of a tunnel in a network domain (e.g., a VPN) receives a service packet, if information of the service packet matches information of a service flow to be detected, the head node device generates a flow ID for the service flow in which the service packet is located, inserts an IFIT header (e.g., inserts the IFIT header and detection indication information for indicating the IFIT header) into the service packet, and records the flow identification to the IFIT header to obtain an IFIT packet. Then, the head node device forwards the IFIT packet to an intermediate node device of the tunnel, and the intermediate node device forwards the IFIT packet to a tail node device of the tunnel. The tail node device strips the IFIT header (e.g., the IFIT header and the detection indication information for indicating the IFIT header) in the IFIT packet to obtain an original service packet, and forwards the original service packet to a next-hop device of the tail node device on the transmission path. The next-hop device is located outside the network domain (e.g., the VPN) in which the tunnel is located. In the above process, the head node device, the intermediate node device, and the tail node device respectively detect the transmission performance of the service flow in which the IFIT packet is located according to the IFIT header of the IFIT packet. For example, the head node device, the intermediate node device, and the tail node device respectively count performance information of the service flow in which the IFIT packet is located according to the flow ID in the IFIT header, and send the performance information of the service flow to a controller. The controller determines the transmission performance of the service flow according to the received performance information of the service flow.
[0083] However, since the tail node device of the tunnel forwards the original service packet to the next-hop device of the tail node device after stripping the IFIT header in the IFIT packet, the service packet transmitted out of the network domain (e.g., the VPN) does not carry the IFIT header, which leads to the inability to detect the transmission performance of the service flow between the tail node device and the next-hop device of the tail node device, that is, the inability to detect the transmission performance of the service flow between a device in the network domain (e.g., the VPN) and a device outside the network domain (e.g., the VPN), and thus the inability to detect the transmission performance of the service flow transmitted across the network domain. For example, in the VPN Option A scenario, it is often necessary to transmit the service flow across the VPN. The above IFIT technology cannot detect the transmission performance of the service flow transmitted across the VPN, and thus the application scenario of the above IFIT technology is limited and the flexibility is poor.
[0084] In view of the above problems existing in the current IFIT technology, the embodiments of the present application provide a transmission method, device and system for detecting a packet. In the technical solution provided by the embodiments of the present application, after a first network device belonging to a first network domain and located at the edge of the first network domain (for example, a tail node device of a first tunnel in the first network domain) receives a first packet including a detection header (for example, an IFIT header), the first network device obtains a second packet including processing identification information and the detection header according to the first packet, and sends the second packet to a next hop device located outside the first network domain and on the transmission path, so that the next hop device detects the transmission performance of a service flow to which the first packet belongs according to the processing identification information and the detection header in the second packet. Thus, the transmission performance of the service flow between the device in the first network domain and the device outside the first network domain is detected, for example, the transmission performance of the service flow in the cross-network domain (for example, VPN) end-to-end transmission is detected, and the application scenarios are wide and the flexibility is poor. The technical solution of the embodiments of the present application will be described in detail below with reference to the drawings.
[0085] In the embodiments of the present application, the detection packet includes a detection header, which can be an IFIT header. In order to facilitate understanding, the detection header in the embodiments of the present application is introduced by taking the IFIT header as an example.
[0086] Please refer to Figure 2 which shows a schematic diagram of a detection header provided by the embodiments of the present application. Referring to Figure 2 The detection header includes a flow instruction header (FIH) and a flow instruction extension header (FIEH). The FIEH is an optional part in the detection header.
[0087] As Figure 2As shown, the FIH includes the following fields: Flow ID, L, D, R, S / R, Next HDR (header), Flow ID Ext, E, P, Forward (F), R, Length, Reserved, Trace Type (TT), and Reserved / Timestamp. The Flow ID and Flow ID Ext fields record the flow identifier. The L field records the packet loss coloring (also known as the packet loss flag field or packet loss flag bit). The D field records the delay coloring (also known as the delay flag field or delay flag bit). The S / R field records whether the label in the flow instruction indicator (FII) of the detection packet is a stack bottom label; if the label in the FII is a stack bottom label, the value of the S / R field is R; otherwise, the value of the S / R field is S. The next HDR field records the protocol type (or extension header type), with a standard value of 9. The E field records the E2E detection mode or hop-by-hop detection mode; a value of 1 in the E field indicates E2E detection mode. The P field is used for Internet Protocol Version 4 (IPv4) detection scenarios to record whether there are mismatches. The F field records the forward flow flag; a value of 1 in the F field indicates a forward flow. The TT field records the flow identifier extension field type, such as carrying a timestamp or automatic reverse flow establishment. The reservation / timestamp field records the per-packet latency (in nanoseconds).
[0088] like Figure 2As shown, the FIEH includes a timestamp field, a destination internet protocol (DIP) mask field, a source internet protocol (SIP) mask field, a protocol / ports field, a V field, a differentiated services code point (DSCP) field, a reserved field, and a period field. The timestamp field is used to record the per-packet delay (in nanoseconds). The DIP mask field is used to record the DIP mask length of automatic reverse flow learning. The SIP mask field is used to record the SIP mask length of automatic reverse flow learning. The protocol / ports field is used to record the protocol number, the source port number, and the target port number. The V field is used to record the reverse flow learning enable flag. The DSCP field is used to record the DSCP priority. The period field is used to record the detection period (or the reporting period of the detection result), and the value in the period field can be 2, 3, 4, or 5, 2 indicating that the detection period is 10 seconds, 3 indicating that the detection period is 30 seconds, 4 indicating that the detection period is 60 seconds, and 5 indicating that the detection period is 300 seconds.
[0089] In the embodiments of the present application, the head node device of the tunnel can insert the detection indication information for indicating the detection header into the service packet while inserting the detection header into the service packet, so that the network device can determine the detection header according to the detection indication information, and detect the transmission performance of the service flow according to the detection header. In a possible implementation manner, the head node device of the tunnel inserts the FII into the service packet while inserting the detection header into the service packet, and records the detection indication information into the FII. Optionally, in a multi-protocol label switching (MPLS) scenario, the FII includes an FII label field, an experimental bit (EXP) field, an S field, a time to live (TTL) field and the like, the FII label field is used to record a bottom label, the value in the S field must be 1 at the bottom, the value in the FII label field can be 12, the value in the FII label field is the detection indication information, and indicates a subsequent detection header (for example, an IFIT header); in a segment routing internet protocol version 6 (SRv6) scenario, the FII includes a detection type field (for example, an IFIT type field), a length field and a reserved field, the value in the detection type field (for example, the IFIT type field) can be 130, the value in the detection type field (for example, the IFIT type field) is the detection indication information, and indicates a subsequent detection header (for example, an IFIT header).
[0090] The service packet in which the detection indication information and the detection header are inserted is a detection packet, that is, the detection packet is obtained after the detection indication information and the detection header are inserted into the service packet. The detection packet in the embodiments of the present application is introduced below by taking the MPLS scenario and the SRv6 scenario as examples.
[0091] Please refer to Figure 3 which shows a schematic diagram of a detection packet provided in the embodiments of the present application. Figure 3 The detection packet in the MPLS scenario is taken as an example for illustration. As shown in Figure 3As shown, the detection message includes: payload, IP header, detection header (e.g., IFIT header), FII, VPN label, segment routing (SR) label, and MAC header. The detection header and FII are detection-related contents inserted into the service message, such as those inserted by the tunnel's head node device. The FII includes the FII label field, EXP field, S field, and TTL field. The value in the FII label field is the detection indication information, which is used to indicate the detection header. The content of the detection header can be found in [reference needed]. Figure 2 The details and related descriptions will not be repeated here. Figure 3 The VPN and SR tags in the detection packets shown are tunnel information inserted into the service packets by the tunnel's head node device. The content of the tunnel information will not be elaborated here.
[0092] Please refer to Figure 4 This illustrates a schematic diagram of another detection message provided in an embodiment of this application. Figure 4 Let's take the detection message in the SRv6 scenario as an example. Figure 4 As shown, the detection message includes: payload, IP header, segment routing header (SRH), detection header, FII, segment list, SRH basic header, IPv6 basic header, and MAC header. The detection header and FII are detection-related contents inserted into the service message, such as those inserted by the tunnel's head node device. The FII includes a detection type field (e.g., an IFIT type field), a length field, and a reserved field. The value in the detection type field is the detection indication information, which is used to instruct the detection header. The content of the detection header can be found in [reference needed]. Figure 2 The details and related descriptions will not be repeated here. Figure 4 The SRH, segment list, and SRH basic header in the detection message shown can be tunnel information inserted into the service message by the tunnel head node device. The content of the tunnel information will not be elaborated here.
[0093] It should be noted that, Figure 3 and Figure 4 The detection messages shown are for illustrative purposes only and are not intended to limit the technical solutions of the embodiments of this application. In practical applications, the content and format of the detection messages can be flexibly set and adjusted as needed. For example, in some embodiments, the detection indication information can be in the detection header, thus allowing the detection message to be displayed in the header. Figure 3 and Figure 4 The FII shown is merged into the detection header, but this application embodiment does not limit this.
[0094] The following describes an embodiment of a method for transmitting a detection packet.
[0095] Referring to Figure 5 , a flowchart of a method for transmitting a detection packet is shown. The method can be applied to a system including a first network device and a second network device, both of which are located on a transmission path of a service flow, and the second network device is a next-hop device of the first network device. The first network device is an edge network device of a first network domain (i.e., the first network device belongs to the first network domain and is located at the edge of the first network domain), and the second network device does not belong to the first network domain. Optionally, the second network device is an edge network device of a second network domain (i.e., the second network device belongs to the second network domain and is located at the edge of the second network domain). For example, at least one of the first network domain and the second network domain is a VPN, such as Figure 1 , the first network domain is VPN1, the second network domain is VPN2, the first network device is PE2 belonging to VPN1, and the second network device is PE3 belonging to VPN2. Referring to Figure 5 , the method can include:
[0096] S501. The first network device receives a first packet, and the first packet includes a detection header used to instruct the network device to detect the transmission performance of a service flow in which the first packet is located according to the detection header, wherein the first network device is an edge network device of a first network domain.
[0097] The first network device can receive the first packet from a next-hop device of the first network device on a transmission path of a service flow in which the first packet is located, and the next-hop device of the first network device belongs to the first network domain. Optionally, the next-hop device of the first network device is a core network device of the first network domain, or the next-hop device of the first network device is an edge network device of the first network domain, which is not limited in the embodiments of the present application. For ease of description, the service flow in which the first packet is located is referred to as a first service flow, the transmission path of the service flow in which the first packet is located is referred to as a first transmission path, and the next-hop device of the first network device on the transmission path of the service flow in which the first packet is located is referred to as a third network device. That is, the service flow in which the first packet is located and the first service flow refer to the same service flow, the transmission path of the service flow in which the first packet is located and the first transmission path refer to the same transmission path, and the next-hop device of the first network device and the third network device refer to the same network device. For example Figure 1 , the first network domain is VPN1, the first transmission path is transmission path W1, the first network device is PE2, and the third network device is P1.
[0098] In a possible implementation of the embodiments of the present application, the transmission path of the service flow in which the first packet is located (i.e., the first transmission path) includes at least one tunnel, each tunnel belongs to a network domain (e.g., a VPN), and the first transmission path includes a first tunnel belonging to a first network domain. The first network device can be a tail node device of the first tunnel, and the next-hop device (i.e., the third network device) of the first network device can be a head node device of the first tunnel or an intermediate node device of the first tunnel. For example Figure 1 As shown in FIG. 1, the first transmission path is the transmission path W1, the transmission path W1 includes the tunnel 1 belonging to the VPN 1 and the tunnel 2 belonging to the VPN 2, the first network domain can be the VPN 1, the first tunnel can be the tunnel 1, the first network device is the PE 2, the third network device is the P1, and the third network device is an intermediate node device of the tunnel 1.
[0099] In the embodiments of the present application, the first packet includes a detection header (e.g., the detection header shown in FIG. 2), which is used to instruct the network device to detect the transmission performance of the service flow (i.e., the first service flow) in which the first packet is located according to the detection header. Figure 2 In a possible implementation, the first packet further includes detection indication information used to indicate the detection header, so that the network device determines the detection header according to the detection indication information, and detects the transmission performance of the first service flow according to the detection header. The transmission performance may, for example, be a service-level agreement (SLA) performance, and the transmission performance of the service flow includes the packet loss amount of the service flow and / or the transmission delay of the packet in the service flow. The detection header in the first packet and the detection indication information used to indicate the detection header may, for example, be inserted by the head node device of the first tunnel in the received service packet, and the detection header carries the flow identifier of the first service flow. That is, the head node device of the first tunnel inserts the detection header and the detection indication information used to indicate the detection header in the received service packet to obtain the first packet. The detection header may, for example, be an IFIT header. Figure 1 As shown in FIG. 1, the first tunnel is the tunnel 1, and the head node device of the first tunnel is the PE 1.
[0100] Optionally, after receiving the service packet, the head node device of the first tunnel detects whether the information (e.g., five tuple or three tuple) of the service packet matches the information (e.g., five tuple or three tuple) of the to-be-detected service flow. If the information of the service packet matches the information of the to-be-detected service flow, the head node device of the first tunnel generates a flow identifier for the service flow to which the service packet belongs, inserts a detection header and detection indication information for indicating the detection header into the service packet, and records the flow identifier into the detection header to obtain a first packet. The service flow to which the first packet belongs is the service flow to which the service packet belongs, that is, the first service flow. The service packet can be a layer 2 (L2) packet, a layer 3 (L3) packet, an MPLS packet, an SR packet, or an SRv6 packet, and the first packet can be an L2 packet, an L3 packet, an MPLS packet, an SR packet, or an SRv6 packet. According to the type of the first network domain, the first packet is different. For example, the first network domain is an MPLS network, the first tunnel is an MPLS type tunnel, and the first packet can be a detection packet as shown in Figure 3 . For another example, the first network domain is an SRv6 network, the first tunnel is an SRv6 type tunnel, and the first packet can be a detection packet as shown in Figure 4 . The information of the to-be-detected service flow can be sent by a controller to the head node device of the first tunnel or configured (e.g., manually configured) on the head node device of the first tunnel.
[0101] In the embodiments of the present application, the first packet further includes a MAC header, an IP header, a payload, and tunnel information of the first tunnel, etc. The MAC header refers to a header including MAC information (such as a source MAC address, a destination MAC address, etc.), and in some embodiments, an Ethernet (ETH) header is included in the packet, and the MAC information is located in the ETH header. The IP header refers to a header including IP information, and the IP header can be an internet protocol version 4 (IPv4) header or an internet protocol version 6 (IPv6) header. The payload in the first packet is, for example, service data, etc. According to different tunnel types, the tunnel information of the first tunnel can be an MPLS-based label or an SRv6-based SID. The tunnel information of the first tunnel can be encapsulated in the first packet by a head node device of the first tunnel, for example, the head node device of the first tunnel encapsulates the tunnel information in the service packet, and inserts the detection header and detection indication information for indicating the detection header to obtain the first packet. Alternatively, the first packet can also be other packets, and the first packet can further include other contents. For example, the first packet can be an IPv4 packet or an IPv6 packet, and the first packet can further include a virtual local area network (VLAN) identifier, indication information for indicating the VLAN identifier, and indication information for indicating that the IP header is an IPv4 header or an IPv6 header, etc., and the embodiments of the present application do not limit the first packet.
[0102] S502. The first network device obtains a second packet according to the first packet, the second packet including the detection header in the first packet and processing identification information, the processing identification information being used to indicate that the second network device processes the detection header, wherein the second network device is a next-hop device of the first network device on a transmission path of a service flow to which the first packet belongs, and the second network device does not belong to the first network domain.
[0103] After receiving the first packet, the first network device can process the first packet, and determine the processed first packet as a second packet, so as to obtain the second packet according to the first packet. The second packet includes the processing identification information and the detection header in the first packet, and the processing identification information is used to instruct the second network device to process the detection header, so that the second network device detects the transmission performance of the service flow where the first packet is located according to the detection header. The second network device is a next-hop device of the first network device on a transmission path (i.e., the first transmission path) of the service flow where the first packet is located, and the second network device does not belong to the first network domain. In a possible implementation, the second network device is an edge network device of the second network domain. For example, the first transmission path includes a second tunnel belonging to the second network domain, and the second network device is a head node device of the second tunnel. For example Figure 1 As shown in the figure, the second network domain is VPN2, the second tunnel is tunnel 2, and the second network device is PE3.
[0104] In a possible implementation of the embodiments of the present application, the second packet further includes a MAC header and an IP header, and the processing identification information and the detection header are located between the MAC header and the IP header. For example, the processing identification information and the detection header are distributed between the MAC header and the IP header in a direction from close to the MAC header to far away from the MAC header, and the processing identification information and the detection header are adjacent. That is, the processing identification information is closer to the MAC header than the detection header, and the detection header is closer to the IP header than the processing identification information.
[0105] In specific embodiments, the processing identification information can include an instruction identifier and a detection identifier, the instruction identifier is used to instruct the second network device to process the detection identifier, and the detection identifier is used to instruct the second network device to process the detection header, so that the processing identification information in the second packet instructs the second network device to process the detection header in the second packet. The instruction identifier and the detection identifier can be distributed between the MAC header and the detection header in a direction from close to the MAC header to far away from the MAC header, and the instruction identifier and the detection identifier are adjacent. That is, the instruction identifier is closer to the MAC header than the detection identifier, and the detection identifier is closer to the detection header than the instruction identifier.
[0106] In a possible implementation manner, the second packet includes an eth-type field and a label field, an indication identifier is located in the eth-type field (i.e., a value in the eth-type field is the indication identifier), and a detection identifier is located in the label field (i.e., a value in the label field is the detection identifier). In a specific example, the second packet includes an FII, and the FII includes an FII label field (corresponding to the first packet of the MPLS type) or a detection type field (for example, an IFIT field, corresponding to the first packet of the SRv6 type). The label field used to carry the detection identifier can be the FII label field or the detection type field in the FII, i.e., the detection identifier is located in the FII label field (or the detection type field) in the FII of the second packet. For example, the indication identifier is 0x8847, and the indication identifier 0x8847 is used to represent (or indicate) that content after the indication identifier is the detection identifier (or the indication identifier 0x8847 is used to indicate that 0x8847 is followed by a label). The detection identifier is, for example, 12, and the detection identifier 12 is used to represent (or indicate) that content after the detection identifier is a detection header (or the detection identifier 12 is used to indicate that 12 is followed by a detection header). Embodiments of the present application take the indication identifier as 0x8847 and the detection identifier as 12 as an example, and the specific content of the indication identifier and the detection identifier can be flexibly set according to needs, and the specific content of the indication identifier and the detection identifier is not limited in the embodiments of the present application.
[0107] In a possible implementation manner of the embodiment of the present application, the processing of the first network device on the first packet includes: the first network device stripping the tunnel information (i.e. the tunnel information of the first tunnel) and the detection indication information in the first packet, adjusting the detection header in the first packet to be between the MAC header and the IP header, and inserting the processing identification information between the MAC header and the detection header, so that the processing identification information includes the indication identifier and the detection identifier distributed from the direction close to the MAC header to the direction away from the MAC header. Alternatively, as described above, the first packet includes the detection indication information, the detection indication information is located in the FII label field (or the detection type field) in the FII of the first packet, and the second packet includes the FII, the detection identifier (for example, 12) in the processing identification information is located in the FII label field (or the detection type field) in the FII of the second packet; the processing of the first network device on the first packet can include: the first network device stripping the tunnel information (i.e. the tunnel information of the first tunnel) in the first packet, and deleting the detection indication information in the FII label field (or the detection type field) in the FII of the first packet (or deleting the value in the FII label field (or the detection type field) in the FII of the first packet), recording the detection identifier (for example, 12) to the FII label field (or the detection type field) in the FII of the first packet, and adjusting the detection header and the FII in the first packet to be between the MAC header and the IP header, and inserting the indication identifier (for example, 0x8847) between the MAC header and the FII, the indication identifier (for example, 0x8847) and the detection identifier (for example, 12) jointly constitute the processing identification information, and the processing identification information includes the indication identifier and the detection identifier distributed from the direction close to the MAC header to the direction away from the MAC header. The first network device obtains the second packet after processing the first packet. For example, the second packet is as shown in Figure 6 .
[0108] In the embodiment of the present application, the detection header in the second packet is the same as the detection header in the first packet. For example, the detection packet is the detection header as shown in Figure 2 , as described above, the first packet can be the detection packet as shown in Figure 3 or Figure 4 . In order to facilitate understanding of the difference between the first packet and the second packet and the implementation of the first network device obtaining the second packet according to the first packet, the second packet of the embodiment of the present application will be introduced as follows. Figure 7 .
[0109] For example, please refer to Figure 7 , which shows a schematic diagram of a second packet provided by the embodiment of the present application, Figure 7 . The second packet as shown in Figure 7 may be obtained based on the first packet of the MPLS type or the first packet of the SRv6 type.As shown, the second packet includes a payload, an IP header, a detection header, an FII, an indication identifier (for example, 0x8847), and a MAC header. The FII includes an FII label / detection type field (the FII label field corresponds to the first packet of the MPLS type; the detection type field is, for example, an IFIT type field, and the IFIT type field corresponds to the first packet of the SRv6 type), and a detection identifier (for example, 12) is located in the FII label / detection type field, that is, the value in the FII label / detection type field is the detection identifier. The indication identifier (for example, 0x8847) and the detection identifier (for example, 12) in the FII label / detection type field constitute processing identifier information, and the processing identifier information is used to instruct the second network device to process the detection header, which can be an IFIT header.
[0110] In the embodiments of the present application, the first packet can be as shown in Figure 3 (MPLS type first packet) or Figure 4 (SRv6 type first packet), Figure 7 The second packet as shown can be obtained based on the first packet as shown in Figure 3 or Figure 4 Compared with Figure 3 and Figure 7 , the first network device strips the tunnel information (for example, the VPN label, the SR label, etc. in Figure 3 ) in the first packet, modifies the detection indication information in the FII label field in the FII in the first packet to the detection identifier, and inserts the indication identifier between the FII and the MAC header to obtain the second packet. Compared with Figure 4 and Figure 7 , the first network device strips the tunnel information (for example, the segment list, the SRH basic header, the SRH, the IPv6 basic header, etc. in Figure 4 ) in the first packet, modifies the detection indication information in the detection type field (for example, the IFIT field) in the FII in the first packet to the detection identifier, and inserts the indication identifier between the FII and the MAC header to obtain the second packet.
[0111] It should be noted that the second packet as shown in Figure 6 and Figure 7 is only used for example and is not used to limit the technical solutions of the embodiments of the present application. In actual application, the content and format of the second packet can be flexibly set and adjusted according to needs, and the embodiments of the present application do not make specific limitations on the format and content of the second packet.
[0112] S503. The first network device sends the second packet to the second network device.
[0113] After the first network device obtains the second packet, the first network device sends the second packet to the second network device through the link between the first network device and the second network device. Optionally, the first network device is configured with at least one interface, the at least one interface including the first interface, the first interface being used for the first network device to communicate with the second network device (or the first interface being an interface of the first network device used to connect the link between the first network device and the second network device), and the first network device can send the second packet to the second network device through the first interface, so that the second packet is transmitted to the second network device through the link between the first network device and the second network device. The first interface can be a VPN interface.
[0114] In a possible implementation manner of the embodiments of the present application, before the first network device sends the second packet to the second network device through the first interface, the capability of carrying the processing identification information and the detection header in the packet sent through the first interface is enabled. In this way, when the first network device sends the second packet to the second network device through the first interface, the processing identification information and the detection header can be carried in the second packet. For the convenience of description, the capability of carrying the processing identification information and the detection header in the packet sent through a certain interface (for example, the first interface) is referred to as the first capability. In specific embodiments, the first network device can obtain a first enabling instruction, and enable the first capability of the first interface according to the first enabling instruction. The first enabling instruction can be an enabling instruction configured in the first network device through a command line, or an enabling instruction sent by a controller to the first network device. By enabling the first capability of the first interface, the first network device helps to carry the processing identification information and the detection header in the packet sent through the first interface, thereby facilitating the detection of the transmission performance of the first service flow between the device (for example, the first network device) in the first network domain and the device (for example, the second network device) outside the first network domain.
[0115] In a possible implementation manner of the embodiment of the present application, after receiving the first packet, the first network device determines the out interface of the first packet as the first interface according to the destination address of the first packet. After determining the first interface, the first network device detects whether the first interface enables the first capability. If the first interface enables the first capability, the first network device performs S502 to obtain the second packet and performs S503 to send the second packet to the second network device through the first interface. The embodiment of the present application takes the first interface enabling the first capability as an example. In some embodiments, if the first network device determines that the first interface does not enable the first capability, the first network device can determine whether the processing identification information and the detection header need to be carried in the packet sent through the first interface by other manners, to determine whether S502 and S503 are performed, which is not limited in the embodiment of the present application. Optionally, the first network device is the tail node device of the first tunnel. If the first network device determines that the first interface does not enable the first capability, the first network device can not perform S502 and S503. The first network device directly strips the tunnel information, the detection header and the detection indication information used for indicating the detection header in the first packet to obtain the original service packet, and sends the service packet to the second network device, which is not limited in the embodiment of the present application.
[0116] According to the description of S501 and S502, the first network device carries the flow identifier of the first service flow (i.e., the service flow in which the first message is located, and the service flow in which the second message is located) in the detection header in the second message sent to the second network device. In the embodiment of the present application, the first network device can also determine the performance information of the first service flow in the process of transmitting the detection message (e.g., the first message and / or the second message). The first network device can at least carry the performance information of the first service flow determined by the first network device in the detection header in the second message sent to the second network device. The performance information of the first service flow determined by the first network device can include: a receiving time stamp of the first message received by the first network device (for ease of description, the receiving time stamp of the first message received by the first network device is referred to as the first receiving time stamp), and / or a sending time stamp of the second message sent by the first network device to the second network device (for ease of description, the sending time stamp of the second message sent by the first network device to the second network device is referred to as the first sending time stamp), and / or the number of messages including the detection header received by the first network device in the first detection period (for ease of description, the number of messages including the detection header received by the first network device in the first detection period is referred to as the first receiving number), and / or the number of messages including the processing identifier information and the detection header sent out by the first network device in the first detection period (for ease of description, the number of messages including the processing identifier information and the detection header sent out by the first network device in the first detection period is referred to as the first sending number). For example, the first network device carries the correspondence between the performance information of the first service flow determined by the first network device and the indication information of the first network device (e.g., the identifier of the first network device, the address of the first network device, etc.) in the detection header in the second message sent to the second network device, to indicate that the corresponding performance information is determined by the first network device. The first detection period can be the detection period in which the first message is located.
[0117] S504. The second network device receives the second message sent by the first network device.
[0118] Corresponding to the sending of the second message by the first network device to the second network device, the second network device receives the second message sent by the first network device. Optionally, the second network device is configured with at least one interface, the at least one interface including the second interface, the second interface being used for the communication between the second network device and the first network device (or in other words, the second interface being the interface of the second network device used to connect the link between the second network device and the first network device), and the second network device receives the second message sent by the first network device through the second interface. The second interface can be a VPN interface.
[0119] S505. The second network device detects the transmission performance of the service flow where the first message is located according to the processing identification information and the detection header.
[0120] After receiving the second message, the second network device can identify the processing identification information and the detection header in the second message. After identifying the processing identification information and the detection header, the second network device determines that the processing identification information indicates that the second network device processes the detection header, and the second network device processes the detection header according to the indication of the processing identification information, so as to detect the transmission performance of the first service flow (i.e., the service flow where the first message is located, which is also the service flow where the second message is located) according to the detection header. The detection header carries the flow identification of the first service flow, and the second network device detects the transmission performance of the first service flow according to the flow identification of the first service flow. The transmission performance can be the SLA performance, and the transmission performance of the service flow includes the packet loss of the service flow and / or the transmission delay of the message in the service flow.
[0121] As described above, the processing identification information includes an indication identifier and a detection identifier, the indication identifier is used to indicate that the second network device processes the detection identifier, and the detection identifier is used to indicate that the second network device processes the detection header. In a possible implementation manner of the embodiments of the present application, the second network device first identifies the indication identifier from the second message, and then identifies the detection identifier from the second message according to the indication identifier and processes the detection identifier. The processing of the detection identifier by the second network device can include that the second network device identifies the detection header according to the detection identifier. After identifying the detection header, the second network device processes the detection header. The processing of the detection header by the second network device is also that the second network device detects the transmission performance of the service flow (i.e., the first service flow) where the first message is located according to the detection header.
[0122] In a possible implementation manner of the embodiments of the present application, the second network device detecting the transmission performance of the first service flow according to the processing identification information and the detection header includes that the second network device processes the detection header according to the indication of the processing identification information, determines the receiving time stamp (for the convenience of description, the receiving time stamp of the second network device receiving the second message is referred to as the second receiving time stamp) of the second network device receiving the second message according to the indication of the detection header, and records the second receiving time stamp into the time stamp field of the detection header. In a specific example, the second network device records the correspondence between the second receiving time stamp and the indication information (for example, the identifier of the second network device, the address of the second network device) of the second network device in the time stamp field of the detection header, so as to indicate that the second receiving time stamp is the receiving time stamp of the second network device.
[0123] In a possible implementation of the embodiments of the present application, after receiving the second packet, the second network device obtains a third packet according to the second packet, and sends the third packet to the next hop device (for example, the fourth network device) of the first network device on the first transmission path (that is, the transmission path of the service flow in which the first packet is located), where the third packet includes the detection header in the second packet, and the third packet can also include detection indication information for indicating the detection header. The second network device detects the transmission performance of the first service flow according to the processing identification information and the detection header, and the detection includes: the second network device processes the detection header according to the indication of the processing identification information, determines a sending timestamp of the third packet sent by the second network device to the fourth network device (for the convenience of description, the sending timestamp of the third packet sent by the second network device to the fourth network device is referred to as a second sending timestamp) according to the indication of the detection header, and records the second sending timestamp into a timestamp field of the detection header. In a specific example, the second network device records the correspondence between the second sending timestamp and the indication information of the second network device in the timestamp field of the detection header, to indicate that the second sending timestamp is the sending timestamp of the second network device.
[0124] In a possible implementation of the embodiments of the present application, the second network device is a head node device of a second tunnel in a second network domain, and the second network device obtains a third packet according to the second packet, including: the second network device processes the second packet, and determines the processed packet as the third packet, where the third packet includes the detection header in the second packet, detection indication information for indicating the detection header, and tunnel information of the second tunnel. For example, the second network device processes the second packet, including: the second network device strips the processing identification information in the second packet, and encapsulates the tunnel information of the second tunnel and the detection indication information for indicating the detection header in the second packet. The detection indication information in the third packet can be the same as or different from the detection indication information in the first packet. In a specific example, the first tunnel and the second tunnel are tunnels of the same type, the third packet is the same as the first packet, and the detection indication information in the third packet is the same as the detection indication information in the first packet. For example, the first tunnel and the second tunnel are both MPLS tunnels, the detection indication information in the third packet and the detection indication information in the first packet are both values in an FII label field in an FII, and the format of the third packet and the format of the first packet can be as shown in Figure 3 For another example, the first tunnel and the second tunnel are both SRv6 tunnels, the detection indication information in the third packet and the detection indication information in the first packet are both values in a detection type field (for example, an IFIT field) in an FII, and the format of the third packet and the format of the first packet can be as shown in Figure 4The third message is different from the first message, and the detection indication information in the third message is different from the detection indication information in the first message. The detection indication information in the first message can be a value in an FII label field in the FII, and the detection indication information in the third message can be a value in a detection type field (for example, an IFIT field) in the FII. For example, the format of the first message can be as shown in FIG. 1A. Figure 3 The format of the third message can be as shown in FIG. 1C. Figure 4 It should be noted that the embodiments of the present application take the second network device stripping the processing identification information in the second message as an example for illustration. In some embodiments, the second network device can not strip the processing identification information in the second message, and the embodiments of the present application do not limit this.
[0125] In a possible implementation manner of the embodiments of the present application, the second network device detecting the transmission performance of the first service flow according to the processing identification information and the detection header further includes: the second network device processing the detection header according to the indication of the processing identification information, counting the number of messages including the processing identification information and the detection header received by the second network device in a first detection period (for the convenience of description, the number of messages including the processing identification information and the detection header received by the second network device in the first detection period is referred to as a second receiving quantity) and / or the number of messages including the detection header sent out by the second network device in the first detection period (for the convenience of description, the number of messages including the detection header sent out by the second network device in the first detection period is referred to as a second sending quantity) according to the indication of the detection header, and the second network device recording the second receiving quantity and / or the second sending quantity into the detection header. In a specific example, the second network device records the correspondence between the second receiving quantity and / or the second sending quantity and the indication information of the second network device in the detection header, to indicate that the second receiving quantity and / or the second sending quantity are determined by the second network device.
[0126] In one possible implementation of this application embodiment, the second network device detecting the transmission performance of the first service flow based on the processing identification information and the detection header further includes: the second network device processing the detection header according to the instruction of the processing identification information; after processing the detection header (for example, the second network device recording a second receive timestamp, and / or a second send timestamp, and / or a second receive quantity, and / or a second send quantity in the detection header), the second network device determining whether the reporting conditions are met; if the reporting conditions are met, the second network device reporting the performance information of the first service flow and the flow identifier of the first service flow recorded in the detection header to the controller, so that the controller determines the transmission performance of the first service flow based on the received performance information of the first service flow and the flow identifier of the first service flow. The performance information of the first service flow recorded in the detection header may include at least: performance information of the first service flow determined by the first network device (e.g., including the first receive timestamp, and / or the first send timestamp, and / or the first receive quantity, and / or the first send quantity) and performance information of the first service flow determined by the second network device (e.g., including the second receive timestamp, and / or the second send timestamp, and / or the second receive quantity, and / or the second send quantity). Based on the received performance information of the first service flow and the flow identifier of the first service flow, the controller may determine at least: the packet loss of the first service flow in the first network device, and / or the packet loss of the first service flow in the second network device, and / or the packet loss of the first service flow in the link between the first network device and the second network device, and the transmission delay of the detection message (e.g., the first message, the second message, and the third message) in the first network device, and / or the transmission delay of the detection message in the second network device, and / or the transmission delay of the detection message in the link between the first network device and the second network device.
[0127] Optionally, the second network device determines whether the reporting conditions are met by: the second network device determining whether the reporting time has been reached based on the detection period recorded in the detection header of the detection message (e.g., the second message or the third message); if the reporting time has been reached, the second network device determines that the reporting conditions are met; otherwise, the second network device determines that the reporting conditions are not met. The second network device reporting the performance information of the first service flow and the flow identifier of the first service flow to the controller may include: the second network device reporting to the domain controller of the second network domain (e.g., the controller within the domain of the second network domain)... Figure 1 The controller 200 in VPN2 reported the performance information and flow identifier of the first service flow to the controller in the second network domain (e.g., the controller in the domain domain reported the information to the E2E controller). Figure 1 The controller 300 shown reports the performance information and flow identifier of the first service flow, but this application embodiment does not limit this.
[0128] In the embodiments of the present application, before the second network device identifies the processing identification information and the detection header in the second packet (for example, before the second network device performs S505), the capability of identifying the processing identification information and the detection header carried in the packet received through the second interface of the second network device can be enabled. In this way, after the second network device receives the second packet through the second interface, the second network device can identify the processing identification information and the detection header in the second packet to perform S505. For ease of description, the capability of identifying the processing identification information and the detection header carried in the packet received through a certain interface (for example, the second interface) is referred to as a second capability. In specific embodiments, the second network device can obtain a second enabling instruction, and enable the second capability of the second interface according to the second enabling instruction. The second enabling instruction can be an enabling instruction configured in the second network device through a command line, or an enabling instruction sent by a controller to the second network device, and the embodiments of the present application do not make any limitation in this regard. By enabling the second capability of the second interface, the second network device helps to inherit the detection header in the second packet to detect the transmission performance of the first service flow, thereby facilitating the detection of the transmission performance between the device (for example, the first network device) in the first network domain and the device (for example, the second network device) outside the first network domain.
[0129] In a possible implementation manner of the embodiment of the present application, after the second network device receives the second packet through the second interface, the second network device detects whether the second interface enables the second capability. If the second interface enables the second capability, the second network device performs S505. The embodiment of the present application takes the second interface enabling the second capability as an example. In some embodiments, if the second network device determines that the second interface does not enable the second capability, the second network device can determine whether to identify the processing identification information and the detection header carried in the received packet through the second interface by other manners, to determine whether to perform S505, which is not limited in the embodiment of the present application. Optionally, the detection header in the second packet (that is, the detection header in the first packet) is a first detection header, a flow identifier of the first service flow in the first detection header is a first flow identifier, and the second network device is a tail node device of the second tunnel. If the second network device determines that the second interface does not enable the second capability, the second network device does not identify the processing identification information and the detection header in the second packet. The second network device detects whether information (for example, a five-tuple or a three-tuple) of the second packet matches information (for example, a five-tuple or a three-tuple) of the service flow to be detected. If the information of the second packet matches the information of the service flow to be detected, the second network device generates a flow identifier (for example, a second flow identifier) for the first service flow, inserts a second detection header into the second packet, records the second flow identifier into the second detection header to obtain a fourth packet, and sends the fourth packet to a device located behind the second network device on the first transmission path, so that each device on the second tunnel detects the transmission performance of the first service flow according to the second detection header.
[0130] In the embodiment of the present application, the first interface of the first network device enables the first function, and the second interface of the second network device enables the second function are taken as an example. In some embodiments, the first interface of the first network device and the second interface of the second network device can both enable the first function and the second function, so that the first network device can carry the processing identification information and the detection header in the packet sent through the first interface, and can identify the processing identification information and the detection header carried in the received packet through the first interface, and the second network device can carry the processing identification information and the detection header in the packet sent through the second interface, and can identify the processing identification information and the detection header carried in the received packet through the second interface, to realize the bidirectional detection of the transmission performance of the service flow transmitted between the first network device and the second network device.
[0131] In the foregoing description of the embodiments of the present application, the transmission performance of the first service flow is detected by the second network device according to the processing identification information and the detection header in the second packet. In some embodiments, each network device on the first transmission path can detect the transmission performance of the first service flow according to the detection header in the received detection packet, and each network device on the first transmission path can report the performance information of the first service flow determined by itself to the controller, or a designated network device (for example, a source end device, a destination end device, a head node device of the first tunnel, a tail node device, a head node device of the second tunnel, a tail node device, or any other network device) on the first transmission path reports the performance information of the first service flow to the controller, and the embodiments of the present application are not limited in this regard.
[0132] In summary, the transmission method of the detection packet provided by the embodiments of the present application is that the first network device is an edge network device of the first network domain, the second network device is a next-hop device of the first network device on the transmission path of the service flow in which the first packet is located, the second network device does not belong to the first network domain, after the first network device receives the first packet including the detection header, the second packet including the processing identification information and the detection header is obtained according to the first packet, and the second packet is sent to the second network device, wherein the detection header is used to instruct the network device to detect the transmission performance of the service flow in which the first packet is located according to the detection header, and the processing identification information is used to instruct the second network device to process the detection header; after the second network device receives the second packet, the detection header in the second packet is processed according to the processing identification information in the second packet, so as to detect the transmission performance of the service flow in which the first packet is located according to the detection header, thereby realizing the detection of the transmission performance of the service flow between the first network device in the first network domain and the second network device outside the first network domain, and helping to improve the flexibility of detecting the transmission performance of the service flow and having a wide range of application scenarios.
[0133] The transmission method of the detection packet provided by the embodiments of the present application is that the second network device which does not belong to the first network domain detects the transmission performance of the service flow in which the first packet is located by inheriting the detection header in the detection packet (for example, the first packet) transmitted in the first network domain, which helps to realize the unified detection of the transmission performance of the end-to-end transmission service flow, for example, the second network device belongs to the second network domain, so that the network devices in the first network domain and the network devices in the second network domain detect the transmission performance of the same service flow by using the same detection header, and the detection of the service flow in the end-to-end transmission across the network domains (for example, VPN) is realized.
[0134] In order to facilitate understanding of the technical solutions of the present application, the current IFIT technology and the technical solutions of the embodiments of the present application are compared and described below with reference to the accompanying drawings.
[0135] By way of example, reference is made toFigure 8 and Figure 9 , Figure 8 is a schematic diagram of a packet transmission method in the current IFIT technology, Figure 9 is a schematic diagram of a packet transmission method provided by an embodiment of the present application. Figure 8 and Figure 9 Take an example of end-to-end transmission of a packet from PE1 to PE4. The detection packet can be an IFIT packet, and the detection header can be an IFIT header, or in some embodiments, the FII and the detection header jointly constitute an IFIT header. As shown in Figure 8 and Figure 9 , the transmission path W1 of the service flow (for example, service flow 1) where the service packet 1 is located includes a tunnel 1 in VPN1 (not marked in Figure 8 and Figure 9 ), a tunnel 2 in VPN2 (not marked in Figure 8 and Figure 9 ), and a link 12 between VPN1 and VPN2. PE1 is the head node device of the tunnel 1, PE2 is the tail node device of the tunnel 1, PE3 is the head node device of the tunnel 2, PE4 is the tail node device of the tunnel 2, the link 12 is the link between PE2 and PE3, the interface 1 of PE2 is connected with the link 12, and the interface 2 of PE3 is connected with the link 12. Figure 8 and Figure 9 Take an example of MPLS-based label forwarding in the tunnel 1 and IPv6-based forwarding in the tunnel 2.
[0136] Referring to Figure 8 , in the current IFIT technology: after PE1 receives the service packet 1, it is determined that the information of the service packet 1 matches the information of the to-be-detected service flow, PE1 generates a flowID (for example, flowIDx) for the service flow 1 where the service packet 1 is located, inserts a detection header x and a FII into the service packet 1, records the flowID x into the detection header x, and records detection indication information x for indicating the detection header x in the FII, to obtain a detection packet 1x (PE1 also encapsulates tunnel information of the tunnel 1 in the service packet 1, for example, Figure 8(The labels shown are not elaborated here). Then, PE1 forwards the detection message 1x to its next-hop device P1 on transmission path W1. P1 is an intermediate node device in tunnel 1, and it forwards the detection message 1x to its next-hop device PE2 on transmission path W1. PE2, as the tail node device of tunnel 1, after receiving the detection message 1x, extracts the detection header x and the detection indication information x (e.g., the detection header x and FII) from the detection message 1x to obtain the service message 1 (PE2 also extracts the tunnel information from the detection message 1x, which is not elaborated here). PE2 then forwards the service message 1 to its next-hop device PE3 on transmission path W1 through PE2's interface 1. As the head node device of Tunnel 2, PE3 receives service message 1 through interface 2 of PE2. It then determines that the information in service message 1 matches the information of the service flow to be detected. PE3 generates a flowID (e.g., flowID y) for the service flow 1 containing service message 1, inserts a detection header y and a FII into service message 1, records flowID y in the detection header y, and records detection indication information y in the FII to indicate the detection header y, thus obtaining detection message 1y. (PE3 also encapsulates tunnel information of Tunnel 2 in service message 1, such as...) Figure 8 (The IPv6 shown is not elaborated here). Afterwards, PE3 forwards the detection message 1y to PE4, the next-hop device of PE3 on transmission path W1. As the tail node device of tunnel 2, PE4, upon receiving the detection message 1y, extracts the detection header y and the detection indication information y (e.g., the detection header y and FII) from the detection message 1y to obtain the service message 1 (PE4 also extracts the tunnel information from the detection message 1y, which is not elaborated here), and forwards the service message 1. In the above process, PE1, P1, and PE2 detect the transmission performance of service flow 1, which contains service message 1, in tunnel 1 based on the detection header x, while PE3 and PE4 detect the transmission performance of service flow 1, which contains service message 1, in tunnel 2 based on the detection header y. However, the transmission performance of service flow 1 in link 12 cannot be detected. Furthermore, since the flowID x of service flow 1 recorded in the detection header x is different from the flowID y of service flow 1 recorded in the detection header y, the controller will determine the transmission performance of service flow 1 detected by PE1, P1, and PE2 and the transmission performance of service flow 1 detected by PE3 and PE4 as two different service flow transmission performances. Therefore, it is impossible to achieve unified detection of the transmission performance of service flow 1 transmitted end-to-end from PE1 to PE4.
[0137] refer to Figure 9In this embodiment of the application: PE2 enables the ability to carry processing identification information and detection headers in messages sent through interface 1 of PE2, and PE3 enables the ability to identify the processing identification information and detection headers carried in messages received through interface 2 of PE3. Figure 9 Taking the processing of identification information, including indication and detection identification, as an example, after receiving service message 1, PE1 determines that the information in service message 1 matches the information of the service flow to be detected. PE1 generates a flowID (e.g., flowID x) for the service flow 1 to which service message 1 belongs, inserts a detection header x and FII into service message 1, records flowID x in the detection header x, and records detection indication information x used to indicate the detection header x in the FII, thus obtaining detection message 1x1 (PE1 also encapsulates tunnel information of tunnel 1 in service message 1, for example...). Figure 9 The labels shown are not elaborated here; the detection message 1x1 is, for example, the first message described in the previous embodiment. Then, PE1 forwards the detection message 1x1 to its next-hop device P1 on the transmission path W1. P1 is an intermediate node device of tunnel 1, therefore P1 forwards the detection message 1x1 to its next-hop device PE2 on the transmission path W1. As the tail node device of tunnel 1, PE2 is pre-enabled to carry processing identification information and detection headers in messages sent through interface 1 of PE2. Therefore, after receiving detection message 1x1, PE2 inserts processing identification information into detection message 1x1 to obtain detection message 1x' (PE2 also strips the tunnel information from detection message 1x1, which will not be elaborated here; detection message 1x' is, for example, the second message described in the previous embodiment). For example, PE2 deletes the detection indication information x in the FII of detection message 1x1 and records the detection identifier in the FII of detection message 1x1, and PE1 inserts the indication identifier into detection message 1x1 to obtain detection message 1x'. After obtaining detection message 1x', PE2 forwards detection message 1x' to the next-hop device PE3 on the transmission path W1. As the head node device of Tunnel 2, PE3 is pre-enabled to identify the processing identification information and detection headers carried in the messages received through PE3's interface 2. After receiving detection message 1x' through PE3's interface 2, PE3 processes the detection header x in detection message 1x' according to the processing identification information in detection message 1x', strips the processing identification information from detection message 1x', and records detection indication information x in the FII of detection message 1x' to indicate the detection header x, thereby obtaining detection message 1x2 (PE3 also encapsulates tunnel information of Tunnel 2 in detection message 1x', for example...). Figure 9As shown in the IPv6 in the foregoing embodiment, the detection packet 1x2 (for example, the third packet in the foregoing embodiment) includes the detection header x in the detection packet 1x' and the detection indication information x for indicating the detection header x. Then, the PE3 forwards the detection packet 1x2 to the next hop device PE4 of the PE3 on the transmission path W1. As the tail node device of the tunnel 2, the PE4 strips the detection header x in the detection packet 1x2 and the detection indication information x (for example, the FII) for indicating the detection header x to obtain the service packet 1, and forwards the service packet 1. In the foregoing process, the PE1, the P1 and the PE2 detect the transmission performance of the service flow 1 in the tunnel 1 according to the detection header x in the detection packet 1x1, the PE2 and the PE3 detect the transmission performance of the service flow 1 in the link 12 according to the detection header x in the detection packet 1x', and the PE3 and the PE4 detect the transmission performance of the service flow 1 in the tunnel 2 according to the detection header x in the detection packet 1x2. Thus, the detection of the transmission performance of the service flow 1 in the link 12 is implemented. The PE1, the P1, the PE2, the PE3 and the PE4 detect the transmission performance of the service flow 1 according to the same detection header x, and thus the unified detection of the transmission performance of the service flow 1 in the end-to-end transmission from the PE1 to the PE4 is implemented. Compared with the technology solutions shown in Figure 8 the foregoing embodiment, the technology solution shown in the foregoing embodiment is applicable to the detection of the transmission performance of the service flow in the end-to-end transmission across VPNs, and thus Figure 9 the application scenarios of the technology solution shown in the foregoing embodiment are more extensive and the flexibility is higher. Figure 9
[0138] The foregoing is the introduction of the transmission method of the detection packet provided in the embodiment of the application. The following introduces the device embodiment of the application. The device of the application can be used to execute the transmission method of the detection packet of the application. For the details not disclosed in the device embodiment of the application, refer to the method embodiment of the application.
[0139] Please refer to Figure 10 which shows the structure schematic diagram of a transmission device 1000 of a detection packet provided in an embodiment of the application. The transmission device 1000 is applied to a first network device, for example, the transmission device 1000 is the first network device or a functional component in the first network device. Referring to Figure 10 , the transmission device 1000 can include but is not limited to:
[0140] The receiving module 1010 is configured to receive a first packet, the first packet comprising a detection header, the detection header being used to instruct a network device to detect a transmission performance of a service flow to which the first packet belongs according to the detection header, and the first network device being an edge network device of a first network domain.
[0141] The obtaining module 1020 is configured to obtain a second packet according to the first packet, the second packet comprising the detection header and processing identification information, the processing identification information being used to instruct a second network device to process the detection header, the second network device being a next-hop device of the first network device on a transmission path of the service flow, and the second network device not belonging to the first network domain.
[0142] The sending module 1030 is configured to send the second packet to the second network device. The function of the sending module 1030 can be implemented by referring to the related description of S503.
[0143] Optionally, the second packet further comprises a MAC header and an IP header, and the processing identification information and the detection header are located between the MAC header and the IP header.
[0144] Optionally, the processing identification information and the detection header are distributed between the MAC header and the IP header in a direction from close to the MAC header to far away from the MAC header, and the processing identification information and the detection header are adjacent.
[0145] Optionally, the processing identification information comprises an indication identifier and a detection identifier, the indication identifier being used to instruct the second network device to process the detection identifier, and the detection identifier being used to instruct the second network device to process the detection header.
[0146] Optionally, the indication identifier and the detection identifier are distributed between the MAC header and the detection header in a direction from close to the MAC header to far away from the MAC header, and the indication identifier and the detection identifier are adjacent.
[0147] Optionally, the detection header is an IFIT header.
[0148] Optionally, the second network device is an edge network device of a second network domain.
[0149] Optionally, the first network device is a tail node device of a first tunnel belonging to the first network domain, the second network device is a head node device of a second tunnel belonging to the second network domain, and the first tunnel and the second tunnel are respectively a section of tunnel on the transmission path.
[0150] Optionally, at least one of the first network domain and the second network domain is a VPN.
[0151] Optionally, please continue to refer toFigure 10 The transmission device 1000 further includes an enabling module 1040 configured to enable the capability of carrying the processing identification information and the detection header in the message sent through the first interface of the first network device.
[0152] The sending module 1030 is configured to send the second message to the second network device through the first interface of the first network device.
[0153] In summary, the transmission device for detecting a message provided by the embodiments of the present application, the first network device is an edge network device of a first network domain, the second network device is a next-hop device of the first network device on a transmission path of a service flow to which the first message belongs, and the second network device does not belong to the first network domain. After the first network device receives the first message including the detection header, the second network device is obtained according to the first message, and the second message including the processing identification information and the detection header is sent to the second network device. The detection header is used to indicate that the network device detects the transmission performance of the service flow to which the first message belongs according to the detection header, and the processing identification information is used to indicate that the second network device processes the detection header. After the second network device receives the second message, the detection header in the second message is processed according to the processing identification information in the second message, so as to detect the transmission performance of the service flow to which the first message belongs according to the detection header. Thus, the transmission performance of the service flow between the first network device in the first network domain and the second network device outside the first network domain is detected, which helps to improve the flexibility of detecting the transmission performance of the service flow and has a wide range of application scenarios.
[0154] Please refer to Figure 11 which shows a structural schematic diagram of another transmission device 1100 for detecting a message provided by the embodiments of the present application. The transmission device 1100 is applied to a second network device, for example, the transmission device 1100 is the second network device or a functional component in the second network device. Please refer to Figure 11 The transmission device 1100 can include but is not limited to:
[0155] The receiving module 1110 is configured to receive the second message sent by the first network device. The second message is obtained by the first network device according to the first message. The first message includes a detection header, which is used to indicate that the network device detects the transmission performance of the service flow to which the first message belongs according to the detection header. The second message includes processing identification information and the detection header. The processing identification information is used to indicate that the second network device processes the detection header. The first network device is an edge network device of a first network domain. The second network device is a next-hop device of the first network device on a transmission path of a service flow. The second network device does not belong to the first network domain. The function implementation of the receiving module 1110 can be referred to the related description in S504.
[0156] The detection module 1120 is configured to detect the transmission performance of the service flow to which the first packet belongs according to the processing identification information and the detection header in the second packet. The function of the detection module 1120 can be implemented by referring to the description of S505 above.
[0157] Optionally, the second packet further comprises a MAC header and an IP header, and the processing identification information and the detection header are located between the MAC header and the IP header.
[0158] Optionally, the processing identification information and the detection header are distributed between the MAC header and the IP header in a direction from close to the MAC header to away from the MAC header, and the processing identification information and the detection header are adjacent.
[0159] Optionally, the processing identification information comprises an indication indication and a detection indication, the indication indication is used to instruct the second network device to process the detection indication, and the detection indication is used to instruct the second network device to process the detection header.
[0160] Optionally, the indication indication and the detection indication are distributed between the MAC header and the detection header in a direction from close to the MAC header to away from the MAC header, and the indication indication and the detection indication are adjacent.
[0161] Optionally, the detection header is an IFIT header.
[0162] Optionally, the second network device is an edge network device of the second network domain.
[0163] Optionally, the first network device is a tail node device of a first tunnel belonging to a first network domain, the second network device is a head node device of a second tunnel belonging to a second network domain, and the first tunnel and the second tunnel are respectively a section of tunnel on a transmission path.
[0164] Optionally, at least one of the first network domain and the second network domain is a VPN.
[0165] Optionally, please continue to refer to Figure 11 The transmission device 1100 further comprises an enabling module 1130 configured to enable the capability of identifying the processing identification information and the detection header carried in the packet received through the second interface of the second network device.
[0166] The receiving module 1110 is configured to receive the second packet sent by the first network device through the second interface of the second network device.
[0167] In summary, the transmission device for detecting a packet provided by the embodiments of the present application, the first network device is an edge network device of a first network domain, the second network device is a next-hop device of the first network device on a transmission path of a service flow to which the first packet belongs, the second network device does not belong to the first network domain, the second packet sent by the first network device to the second network device is obtained by the first network device according to the first packet, the first packet comprises a detection header, the detection header is used to instruct the network device to detect the transmission performance of the service flow to which the first packet belongs according to the detection header, the second packet comprises processing identification information and the detection header, and the processing identification information is used to instruct the second network device to process the detection header; after the second network device receives the second packet, the second network device processes the detection header in the second packet according to the processing identification information in the second packet, so as to detect the transmission performance of the service flow to which the first packet belongs according to the detection header, thereby realizing the detection of the transmission performance between the first network device in the first network domain and the second network device outside the first network domain, and helping to improve the flexibility of detecting the transmission performance of the service flow and being widely applied in various application scenarios.
[0168] It should be understood that the transmission device for detecting a packet provided by the embodiments of the present application can also be implemented by using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD). The PLD can be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof. The transmission method for detecting a packet provided by the method embodiments can also be implemented by using software. When the transmission method for detecting a packet provided by the method embodiments is implemented by using software, each module in the transmission device for detecting a packet can also be a software module.
[0169] Please refer to Figure 12 which shows a structural schematic diagram of still another transmission device 1200 for detecting a packet provided by the embodiments of the present application. The transmission device 1200 for detecting a packet can be the first network device or the second network device in the above embodiments, or a functional component in the first network device or the second network device. As shown in Figure 12 , the transmission device 1200 for detecting a packet comprises a main control board 1210, an interface board 1230, and an interface board 1240. In the case of multiple interface boards, a switching network board (not shown) can be further included. Figure 12The switching fabric is used to complete data exchange between each interface board (interface board is also called line card or service board).
[0170] The main control board 1210 is used to complete system management, device maintenance, protocol processing and other functions. The interface board 1230 and the interface board 1240 are used to provide various service interfaces (for example, POS interface, GE interface, ATM interface, etc.) and implement message forwarding. There are mainly three types of functional units on the main control board 1210: system management control unit, system clock unit and system maintenance unit. The main control board 1210, the interface board 1230 and the interface board 1240 are connected through a system bus and a system backboard to realize mutual communication. The interface board 1230 includes one or more processors 1231. The processor 1231 is used to control and manage the interface board 1230 and communicate with the central processor 1212 on the main control board 1210. The memory 1232 on the interface board 1230 is used to store routing and forwarding table and other information. The processor 1231 performs message forwarding according to the routing and forwarding table and detects the transmission performance of the service flow where the message is located according to the detection header carried in the message. As shown in Figure 12 The main control board 1210 can include a memory 1214. The memory 1214 on the main control board 1210 can also be used to store routing and forwarding table and other information. The embodiments of the present application do not limit this.
[0171] The interface board 1230 includes one or more network interfaces 1233 for receiving and sending messages. The processor 1231 detects the transmission performance of the service flow where the message is located according to the detection header carried in the message received by the network interface 1233. The specific implementation process will not be described here. The specific functions of the processor 1231 will also not be described here.
[0172] It can be understood that, as shown in Figure 12 In the embodiment, multiple interface boards are included and a distributed forwarding mechanism is adopted. Under this mechanism, the operation on the interface board 1240 is basically similar to the operation of the interface board 1230. For the sake of brevity, it will not be described here. In addition, it can be understood that, Figure 12 The processor 1231 in the interface board 1230 and / or the processor 1241 in the interface board 1240 can be a special hardware or chip, such as a network processor or an application specific integrated circuit, to implement the above functions. This implementation method is the commonly used special hardware or chip processing method for the forwarding plane. In another embodiment, the processor 1231 in the interface board 1230 and / or the processor 1241 in the interface board 1240 can also use a general-purpose processor, such as a central processing unit (CPU), to implement the above-described functions.
[0173] In addition, it should be noted that the master board can have one or more, and when there are multiple, it can include a master master board and a standby master board. The interface board can have one or more, and the stronger the data processing capacity of the network device, the more interface boards it provides. In the case of multiple interface boards, the multiple interface boards can communicate through one or more switching network boards, and when there are multiple, they can jointly implement load sharing and redundancy. Under the centralized forwarding architecture, the network device can not need a switching network board, and the interface board undertakes the processing function of the entire system of service data. Under the distributed forwarding architecture, the network device includes multiple interface boards, and the data exchange between the multiple interface boards can be realized through the switching network board to provide large-capacity data exchange and processing capacity. Therefore, the data access and processing capacity of the network device of the distributed architecture is greater than that of the centralized architecture. Which architecture to use depends on the specific networking deployment scenario, and no limitation is made here.
[0174] In specific embodiments, the memory 1232 can be a read-only memory (ROM) or other type of static storage device that can store static information and instructions, a random access memory (RAM) or other type of dynamic storage device that can store information and instructions, an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disk storage, a magnetic disk or other magnetic storage device, or any other medium capable of storing desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to this. The memory 1232 can exist independently and be connected to the processor 1231 through a communication bus. The memory 1232 can also be integrated with the processor 1231.
[0175] The memory 1232 is used to store program code and is controlled by the processor 1231 to execute to perform part or all of the steps of the detection packet transmission method provided by the above embodiments. The processor 1231 is used to execute the program code stored in the memory 1232. The program code can include one or more software modules. The one or more software modules can be functional modules provided by the embodiments shown in the above Figure 8 or Figure 9 The memory 1214 can also be used to store program code and be controlled by the central processing unit 1212 to execute to perform part or all of the steps of the detection packet transmission method provided by the above embodiments.
[0176] In a specific embodiment, network interface 1233 can be any transceiver-like device used to communicate with other devices or communication networks, such as Ethernet, radio access network (RAN), wireless local area network (WLAN), etc.
[0177] Please refer to Figure 13 This illustration shows a schematic diagram of another packet detection transmission device 1300 provided in this application embodiment. The packet detection transmission device 1300 can be the first network device or the second network device in any of the above embodiments, or a functional component of the first network device or the second network device. See also Figure 13 The message transmission device 1300 includes a processor 1302, a memory 1304, a communication interface 1306, and a bus 1308. The processor 1302, memory 1304, and communication interface 1306 are interconnected via the bus 1308. Figure 13 The connection method between the processor 1302, memory 1304 and communication interface 1306 shown is merely exemplary. In the implementation process, the processor 1302, memory 1304 and communication interface 1306 may also communicate with each other using other connection methods besides bus 1308.
[0178] The memory 1304 can be used to store a computer program 13042, which may include instructions and data. In this embodiment, the memory 1304 can be various types of storage media, such as RAM, ROM, non-volatile RAM (NVRAM), programmable ROM (PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM), flash memory, optical storage, and registers. Furthermore, the memory 1304 may include a hard disk and / or RAM.
[0179] The processor 1302 can be a general processor, which can be a processor that performs certain steps and / or operations by reading and executing computer programs (e.g., the computer program 13042) stored in a memory (e.g., the memory 1304), and can use data stored in the memory (e.g., the memory 1304) in the process of executing the above steps and / or operations. The stored computer programs can be executed to implement the functions of the above-obtained module 1020, the enabling module 1040, the detection module 1120, and the enabling module 1130, for example. The general processor can be, for example but not limited to, a CPU. In addition, the processor 1302 can also be a special-purpose processor, which can be a processor specially designed to perform certain steps and / or operations. The special-purpose processor can be, for example but not limited to, a digital signal processor (DSP), an ASIC, an FPGA, and the like. In addition, the processor 1302 can also be a combination of multiple processors, such as a multi-core processor. The processor 1302 can include at least one circuit to perform all or part of the steps of the packet transmission detection method provided by the above embodiments.
[0180] The communication interface 1306 can include an input / output (I / O) interface, a physical interface, and a logical interface for realizing the interconnection of devices inside the packet transmission detection apparatus 1300, and an interface for realizing the interconnection of the packet transmission detection apparatus 1300 and other devices (e.g., network devices). The physical interface can be a gigabit Ethernet (GE) interface, which can be used to realize the interconnection of the packet transmission detection apparatus 1300 and other devices, and the logical interface is an interface inside the packet transmission detection apparatus 1300, which can be used to realize the interconnection of devices inside the packet transmission detection apparatus 1300. It is easy to understand that the communication interface 1306 can be used for the packet transmission detection apparatus 1300 to communicate with other devices, for example, the communication interface 1306 is used for the sending and receiving of packets between the packet transmission detection apparatus 1300 and other devices, and the communication interface 1306 can implement the functions of the above-mentioned receiving module 1010, the sending module 1030, and the receiving module 1110. In addition, the communication interface 1306 can also include a transceiver to perform the sending and receiving of packets, and the transceiver can also implement the functions of the above-mentioned receiving module 1010, the sending module 1030, and the receiving module 1110.
[0181] The bus 1308 can be any type of communication bus for realizing the interconnection of the processor 1302, the memory 1304, and the communication interface 1306, such as a system bus.
[0182] The above devices can be respectively arranged on mutually independent chips, or at least partially or entirely arranged on the same chip. Whether to arrange the devices independently on different chips or to integrate them on one or more chips often depends on the needs of product design. The embodiments of the present application do not limit the specific implementation forms of the above devices.
[0183] Figure 13 The detection packet transmission apparatus 1300 shown is merely exemplary, and in the implementation process, the detection packet transmission apparatus 1300 can further include other components, which are not listed one by one herein. Figure 13 The detection packet transmission apparatus 1300 shown transmits the detection packet between the device within the network domain (for example, the VPN) and the device outside the network domain (for example, the VPN) by executing all or part of the steps of the detection packet transmission method provided in the above embodiments, to detect the transmission performance of the service flow between the device within the network domain (for example, the VPN) and the device outside the network domain (for example, the VPN), for example, to detect the transmission performance of the service flow transmitted across the network domain (for example, the VPN).
[0184] The embodiments of the present application provide a detection packet transmission system, comprising: a first network device and a second network device, the first network device comprising the detection packet transmission apparatus 1000 as shown in the above Figure 10 The second network device comprises the detection packet transmission apparatus 1100 as shown in the above Figure 11 The second network device comprises the detection packet transmission apparatus 1100 as shown in the above Figure 12 Or Figure 13 The detection packet transmission apparatus.
[0185] Optionally, the first network device is an edge network device of a first network domain, the second network device is a next-hop device of the first network device on a transmission path of a service flow to which the first packet belongs, and the second network device does not belong to the first network domain.
[0186] Optionally, the second network device is an edge network device of a second network domain.
[0187] Optionally, the first network device is a tail node device of a first tunnel belonging to a first network domain, the second network device is a head node device of a second tunnel belonging to a second network domain, and the first tunnel and the second tunnel are respectively a section of tunnel on a transmission path of a service flow to which the first packet belongs.
[0188] The embodiments of the present application provide a computer readable storage medium, which stores a computer program. When the computer program is executed (for example, executed by a network device, one or more processors, etc.), all or part of the steps of the detection packet transmission method provided by the above method embodiments are implemented.
[0189] An embodiment of the present application provides a computer program product, which comprises a program or code, when the program or code is executed (for example, executed by a network device, one or more processors, etc.), all or part of the steps of the method for detecting the transmission of a packet provided by the above method embodiments are implemented.
[0190] An embodiment of the present application provides a chip, which comprises a programmable logic circuit and / or program instructions, when the chip is running, all or part of the steps of the method for detecting the transmission of a packet provided by the above method embodiments are implemented.
[0191] In the above embodiments, all or part of the embodiments can be implemented by software, hardware, firmware or any combination thereof. When implemented by software, all or part of the embodiments can be implemented in the form of a computer program product including one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of the present application are generated. The computer can be a general-purpose computer, a computer network or other programmable device. The computer instructions can be stored in a computer readable storage medium of the computer, or transmitted from one computer readable storage medium to another, for example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center through wired (such as coaxial cable, optical fiber, digital subscriber line) or wireless (such as infrared, wireless, microwave, etc.) mode. The computer readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. integrated with one or more available media. The available media can be magnetic media (such as floppy disk, hard disk, magnetic tape), optical media, or semiconductor media (such as solid state disk) and the like.
[0192] It should be understood that "at least one" herein refers to one or more, and "multiple" refers to two or more. "At least two" refers to two or more, and in the present application, " / " represents or, unless otherwise specified, for example, A / B can represent A or B. "And / or" herein is only a description of the association between the associated objects, which means that there can be three relationships, for example, A and / or B can represent three cases: A exists alone, A and B exist together, and B exists alone. In addition, in order to clearly describe, in the present application, "first", "second", "third" and the like are used to distinguish the same items or similar items with basically the same function and role. Those skilled in the art can understand that "first", "second", "third" and the like do not limit the quantity and execution order.
[0193] The method embodiments and device embodiments provided by the embodiments of the present application can be mutually referred to, and the embodiments of the present application do not limit this. The order of operations of the method embodiments provided by the embodiments of the present application can be adjusted appropriately, and the operations can also be increased or decreased in response to the situation. Any person skilled in the art can easily think of a method of change within the technical range disclosed by the present application, which should be covered within the protection scope of the present application, and thus will not be described again.
[0194] In the corresponding embodiments provided by the present application, it should be understood that the disclosed apparatuses can be implemented by other configuration manners. For example, the apparatus embodiments described above are only schematic, for example, the division of the units is only a logical function division, and there can be another division manner in actual implementation, for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections can be indirect couplings or communication connections through some interfaces, apparatuses or units, and can be electrical or other forms.
[0195] The units described as separated components can or can not be physically separated, and the components described as units can or can not be physical units, and can be located in one place or distributed on a plurality of network devices (for example, terminal devices). Part or all of the units can be selected according to actual needs to achieve the purpose of the embodiments of the present application.
[0196] The above is only an exemplary embodiment of the present application, but the protection scope of the present application is not limited to this. Any person skilled in the art can easily think of various equivalent modifications or replacements within the technical range disclosed by the present application, and these modifications or replacements should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.
Claims
1. A method for detecting transmission of a packet, characterized by, The method comprises: a first network device receives a first packet, the first packet comprising a detection header, the detection header being used to instruct a network device to detect a transmission performance of a service flow to which the first packet belongs according to the detection header, the first network device being a tail node device of a first tunnel belonging to a first network domain, the first tunnel being a section of tunnel on a transmission path of the service flow, the first packet being a packet obtained by inserting the detection header into a service packet belonging to the service flow received by a head node device of the first tunnel; the first network device obtains a second packet from the first packet, the second packet comprising processing identification information and the detection header, the processing identification information being used to instruct a second network device to process the detection header, the second network device being a next-hop device of the first network device on the transmission path, the second network device not belonging to the first network domain; the first network device sends the second packet to the second network device.
2. The method of claim 1, wherein: the second packet further comprises a media access control (MAC) header and an Internet Protocol (IP) header, and the processing identification information and the detection header are located between the MAC header and the IP header.
3. The method of claim 2, wherein: the processing identification information and the detection header are distributed between the MAC header and the IP header in a direction from close to the MAC header to away from the MAC header, and the processing identification information and the detection header are adjacent.
4. The method of claim 3, wherein: the processing identification information comprises an indication identifier and a detection identifier, the indication identifier being used to instruct the second network device to process the detection identifier, and the detection identifier being used to instruct the second network device to process the detection header.
5. The method of claim 4, wherein: the indication identifier and the detection identifier are distributed between the MAC header and the detection header in the direction from close to the MAC header to away from the MAC header, and the indication identifier and the detection identifier are adjacent.
6. The method of claim 1, wherein: the detection header is an in-flow information telemetry (IFIT) header.
7. The method of claim 1, wherein: the second network device is an edge network device of a second network domain.
8. The method of claim 7, wherein: the second network device is a head node device of a second tunnel belonging to the second network domain, and the second tunnel is a section of tunnel on the transmission path.
9. The method of claim 7, wherein: at least one of the first network domain and the second network domain is a virtual private network (VPN).
10. The method of any one of claims 1 to 9, further comprising: enabling, by the first network device, a capability of carrying the processing identification information and the detection header in a packet sent out through a first interface of the first network device. The first network device sends the second packet to the second network device, including that the first network device sends the second packet to the second network device through the first interface of the first network device.
11. A method for detecting transmission of a packet, the method comprising: The method comprises: The second network device receives the second packet sent by the first network device, wherein the second packet is obtained by the first network device according to a first packet, the first packet comprises a detection header, the detection header is used to instruct a network device to detect transmission performance of a service flow where the first packet is located according to the detection header, the second packet comprises processing identification information and the detection header, the processing identification information is used to instruct the second network device to process the detection header, the first network device is a tail node device of a first tunnel belonging to a first network domain, the first tunnel is a section of tunnel on a transmission path of the service flow, the first packet is a packet obtained by inserting the detection header into a service packet belonging to the service flow received by a head node device of the first tunnel, and the second network device is a next hop device of the first network device on the transmission path and does not belong to the first network domain. The second network device detects the transmission performance of the service flow according to the processing identification information and the detection header.
12. The method of claim 11, wherein The second packet further comprises a media access control (MAC) header and an Internet Protocol (IP) header, and the processing identification information and the detection header are located between the MAC header and the IP header.
13. The method of claim 12, wherein The processing identification information and the detection header are distributed between the MAC header and the IP header in a direction from close to the MAC header to far away from the MAC header, and the processing identification information and the detection header are adjacent.
14. The method of claim 13, wherein The processing identification information comprises an indication identification and a detection identification, the indication identification is used to instruct the second network device to process the detection identification, and the detection identification is used to instruct the second network device to process the detection header.
15. The method of claim 14, wherein The indication identification and the detection identification are distributed between the MAC header and the detection header in a direction from close to the MAC header to far away from the MAC header, and the indication identification and the detection identification are adjacent.
16. The method of claim 11, wherein The detection header is an in-flow information technology (IFIT) header.
17. The method of claim 11, wherein The second network device is an edge network device of a second network domain.
18. The method of claim 17, wherein The second network device is a head node device of a second tunnel belonging to the second network domain, and the second tunnel is a section of tunnel on the transmission path.
19. The method of claim 17, wherein At least one of the first network domain and the second network domain is a virtual private network (VPN).
20. The method of any of claims 11-19, wherein, The method further comprises enabling the second network device to identify the processing identification information and the detection header carried in a packet received through a second interface of the second network device. The second network device receives the second packet sent by the first network device, comprising: the second network device receiving the second packet sent by the first network device through the second interface of the second network device.
21. A packet transmission apparatus for detecting a packet, characterized by comprising: The transmission device applied to the first network device, the transmission device comprises: A receiving module, configured to receive a first packet, the first packet comprising a detection header, the detection header being used to instruct a network device to detect a transmission performance of a service flow to which the first packet belongs according to the detection header, the first network device being a tail node device of a first tunnel belonging to a first network domain, the first tunnel being a section of tunnel on a transmission path of the service flow, and the first packet being a packet obtained by inserting the detection header into a service packet belonging to the service flow and received by a head node device of the first tunnel; An obtaining module, configured to obtain a second packet according to the first packet, the second packet comprising processing identification information and the detection header, the processing identification information being used to instruct a second network device to process the detection header, the second network device being a next-hop device of the first network device on the transmission path of the service flow and not belonging to the first network domain; A sending module, configured to send the second packet to the second network device.
22. The transmission device of claim 21, wherein, The second packet further comprises a media access control (MAC) header and an Internet Protocol (IP) header, and the processing identification information and the detection header are located between the MAC header and the IP header.
23. The transmission device of claim 22, wherein, The processing identification information and the detection header are distributed between the MAC header and the IP header in a direction from close to the MAC header to away from the MAC header, and the processing identification information and the detection header are adjacent.
24. The transmission device of claim 23, wherein, The processing identification information comprises an indication identifier and a detection identifier, the indication identifier being used to instruct the second network device to process the detection identifier, and the detection identifier being used to instruct the second network device to process the detection header.
25. The transmission device of claim 24, wherein, The indication identifier and the detection identifier are distributed between the MAC header and the detection header in a direction from close to the MAC header to away from the MAC header, and the indication identifier and the detection identifier are adjacent.
26. The transmission device of claim 21, wherein, The detection header is an in-flow information technology (IFIT) header.
27. The transmission device of claim 26, wherein, The second network device is an edge network device of a second network domain.
28. The transmission apparatus of claim 27, wherein The second network device is a head node device of a second tunnel belonging to the second network domain, and the second tunnel is a section of tunnel on the transmission path.
29. The transmission apparatus of claim 27, wherein At least one of the first network domain and the second network domain is a virtual private network (VPN).
30. The transmission apparatus of any of claims 21 to 29, wherein The transmission apparatus further comprises an enabling module configured to enable a capability of carrying the processing identification information and the detection header in a packet sent out through a first interface of the first network device. The sending module is configured to send the second packet to the second network device through the first interface of the first network device.
31. A device for detecting transmission of a packet, the device comprising: The transmission apparatus applied to a second network device comprises: A receiving module configured to receive a second packet sent by a first network device, wherein the second packet is obtained by the first network device according to a first packet, the first packet comprises a detection header, the detection header is used to instruct a network device to detect a transmission performance of a service flow to which the first packet belongs according to the detection header, the second packet comprises processing identification information and the detection header, the processing identification information is used to instruct the second network device to process the detection header, the first network device is a tail node device of a first tunnel belonging to a first network domain, the first tunnel is a section of tunnel on a transmission path of the service flow, the first packet is a packet obtained by inserting the detection header into a service packet belonging to the service flow and received by a head node device of the first tunnel, the second network device is a next hop device of the first network device on the transmission path of the service flow, and the second network device does not belong to the first network domain. A detecting module configured to detect the transmission performance of the service flow according to the processing identification information and the detection header.
32. The transmission apparatus of claim 31, wherein The second packet further comprises a media access control (MAC) header and an Internet Protocol (IP) header, and the processing identification information and the detection header are located between the MAC header and the IP header.
33. The transmission apparatus of claim 32, wherein The processing identification information and the detection header are distributed between the MAC header and the IP header in a direction from close to the MAC header to far away from the MAC header, and the processing identification information and the detection header are adjacent.
34. The transmission apparatus of claim 33, wherein The processing identification information comprises an indication identifier and a detection identifier, the indication identifier is used to instruct the second network device to process the detection identifier, and the detection identifier is used to instruct the second network device to process the detection header.
35. The transmission apparatus of claim 34, wherein The indication identifier and the detection identifier are distributed between the MAC header and the detection header in a direction from close to the MAC header to far away from the MAC header, and the indication identifier and the detection identifier are adjacent.
36. The transmission apparatus of claim 31, wherein, The detection header is an in-flow information detection (IFIT) header.
37. The transmission apparatus of claim 31, wherein, The second network device is an edge network device of a second network domain.
38. The transmission apparatus of claim 37, wherein, The second network device is a head node device of a second tunnel belonging to the second network domain, and the second tunnel is a section of tunnel on the transmission path.
39. The transmission apparatus of claim 37, wherein, At least one of the first network domain and the second network domain is a virtual private network (VPN).
40. The transmission apparatus of any of claims 31 to 39, wherein, The transmission apparatus further comprises an enabling module configured to enable the capability of identifying the processing identifier information and the detection header carried in the packet received through the second interface of the second network device. The receiving module is configured to receive the second packet sent by the first network device through the second interface of the second network device.
41. A transmission device for detecting messages, characterized in that, comprising a memory and a processor; The memory is configured to store a computer program; The processor is configured to execute the computer program stored in the memory to enable the transmission apparatus to perform the transmission method of the packet as claimed in any of claims 1 to 20.
42. A computer-readable storage medium, characterized in that, The computer program stored in the computer readable storage medium is executed to implement the transmission method of the packet as claimed in any of claims 1 to 20.
43. A system for detecting transmission of a message, the system comprising: a message detector configured to detect a message; a message transmitter configured to transmit the message; and a message receiver configured to receive the message. comprising: a first network device and a second network device, The first network device comprises the transmission apparatus of the packet as claimed in any of claims 21 to 30, and the second network device comprises the transmission apparatus of the packet as claimed in any of claims 31 to 40; or At least one of the first network device and the second network device comprises the transmission apparatus of the packet as claimed in claim 41.
44. A computer program product, characterised in that, The computer program product comprises a program or code, which is executed to implement the transmission method of the packet as claimed in any of claims 1 to 20. The computer program product comprises a program or code, which is executed to implement the transmission method of the packet as claimed in any of claims 1 to 20.
Citation Information
Patent Citations
Network layer monitoring method, network layer monitoring system and related devices
CN106817269A
Method and device for providing business service for business flow
CN111953604A