Network telemetering method and device, network node equipment, controller and terminal equipment
By receiving and processing telemetry data packets on network nodes and performing telemetry task configuration and query, the problem that network telemetry flow detection technology in the prior art cannot obtain comprehensive network status information, and achieves the problem that without increasing bandwidth and computing overhead In the case of obtaining comprehensive network status information.
Patent Information
- Application Number
- CN202310688100.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-12
- Publication Date
- 2024-12-13
AI Technical Summary
In the prior art, network telemetry flow-by-stream detection technology cannot obtain more comprehensive network status information while ensuring bandwidth and computing overhead.
By receiving the telemetry data packets sent by the controller, the network nodes are configured and queryed to configure and query the telemetry task, and obtain the telemetry result data, and analyze and calculate it at the network node. The query data packets are reported to the controller based on the telemetry results, reducing the controller's Analyze calculation overhead.
It is realized that a more comprehensive network status information is obtained without increasing network bandwidth and computing overhead, and the problem of not being able to obtain comprehensive network status information in the prior art is solved.
Smart Images

Figure CN119135579A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of communication technology, and in particular to a network telemetry method, device, network node equipment, controller and terminal equipment. Background Art
[0002] In order to perceive the network status in real time and respond promptly when link congestion or failure occurs in the network, it is necessary to measure the network status in real time. The flow detection technology of in-band network telemetry INT (in-band network telemetry) supports the flow of business traffic message data in network nodes, and directly encapsulates the required operation and maintenance management information (Operations, Administration and Maintenance, OAM), such as packet queuing delay, queue length, throughput bandwidth, etc., in the data packet. At the last hop of the monitoring flow, the edge node removes the OAM data and forwards it to the controller (passport mode); or directly reports it to the controller at each hop (postcard mode).
[0003] Network telemetry flow detection technology obtains the running status information of each data packet inside each network node, provides the network internal status information at the message level granularity, brings a lot of bandwidth and computing storage overhead to the network; or, reduces the telemetry information, only measures limited indicators or only measures the priority nodes, and cannot obtain the information of the entire life cycle of a specific flow. Summary of the invention
[0004] The purpose of the present invention is to provide a network telemetry method, device, network node equipment, controller and terminal equipment to solve the problem in the prior art that the network telemetry flow detection technology cannot guarantee the network bandwidth and computing overhead while obtaining more comprehensive network status information.
[0005] To achieve the above object, an embodiment of the present invention provides a network telemetry method, which is applied to a network node device, including:
[0006] Receive a telemetry data packet sent by a controller; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node performing the telemetry task;
[0007] Obtaining telemetry result data according to the telemetry data packet;
[0008] The telemetry result data is sent to the controller.
[0009] Further, the telemetry data packet includes: header data and payload data;
[0010] The packet header data includes the following information:
[0011] The source network node IP address, destination network node IP address, source network node port, destination network node port and protocol number of the target flow;
[0012] The payload data includes: In-band Network Telemetry INT (In-band Network Telemetry) data.
[0013] Furthermore, in-band network telemetry INT data includes:
[0014] Header structure and data structure;
[0015] The header structure includes: the type of the telemetry data packet and the feedback mode of the telemetry task configuration;
[0016] The data structure includes: telemetry task configuration mode, telemetry indicator data and telemetry result reporting method.
[0017] Further, in the case where the telemetry data packet is a telemetry task configuration data packet, obtaining telemetry result data according to the telemetry data packet includes:
[0018] Configure the telemetry task according to the telemetry task configuration data packet;
[0019] Execute the telemetry task to obtain telemetry result data.
[0020] Further, sending the telemetry result data to the controller includes:
[0021] Comparing the telemetry indicator value in the telemetry result data with a preset threshold value;
[0022] If the telemetry index value is greater than the preset threshold, the telemetry result data is sent to the controller;
[0023] The preset threshold is a threshold configured according to the telemetry task configuration data packet.
[0024] Furthermore, in the case where the telemetry data packet is a telemetry result query data packet, before receiving the telemetry data packet sent by the controller, the method further includes:
[0025] receiving a telemetry data packet including a telemetry task configuration data packet sent by the controller;
[0026] Configure the telemetry task according to the telemetry task configuration data packet;
[0027] Execute the telemetry task, obtain and save the telemetry result data.
[0028] Further, according to the telemetry data packet, telemetry result data is obtained, including:
[0029] According to the telemetry data packet, the telemetry result data corresponding to the telemetry data packet in the saved telemetry result data is obtained.
[0030] Further, the executing the telemetry task includes:
[0031] Determining the telemetry indicator type in the telemetry indicator data according to the telemetry task configuration data packet;
[0032] Execute the telemetry task according to the telemetry indicator type;
[0033] The telemetry indicator type includes at least one of the following: random packet loss, average queuing delay, maximum queuing delay, minimum queuing delay, queuing delay jitter, flow size of the target flow, number of data packets of the target flow, and path attributes of the target flow;
[0034] The telemetry result reporting methods include: threshold driven reporting and active detection reporting.
[0035] Further, according to the telemetry indicator type, executing the telemetry task includes at least one of the following:
[0036] Determine a first data packet that matches the header of the telemetry data packet according to the header of the received data packet, then the number of the first data packets is used as the index value of the number of data packets of the target flow, and the number of bytes of the first data packet is used as the flow index of the target flow;
[0037] Acquire a first queuing delay for currently receiving the data packet, and update the average queuing delay according to the saved average queuing delay and the first queuing delay;
[0038] Acquire a first queuing delay for currently receiving the data packet, compare the first queuing delay with a maximum value of the saved queuing delay, and update the maximum value of the queuing delay;
[0039] Acquire a first queuing delay for currently receiving the data packet, compare the first queuing delay with the minimum value of the queuing delay saved in the first queuing delay, and update the minimum value of the queuing delay;
[0040] Obtaining a first queuing delay for currently receiving the data packet, and determining an indicator value of delay jitter according to the saved queuing delay of a previous data packet;
[0041] Determine a second data packet that matches the header of the telemetry data packet from a header of a data packet received by a first network node, and determine a third data packet that matches the header of the telemetry data packet from a header of a data packet received by a second network node, the difference between the number of the third data packet and the number of the second data packet is an indicator value of the random packet loss, and the first network node and the second network node are adjacent network nodes in the target flow;
[0042] Determine the index value of the path attribute, wherein the path attribute includes: the queuing delay of the path, the maximum and minimum queuing delays of the path, the number of packet losses of the path, and the flow size of the path.
[0043] Further, the receiving of the telemetry data packet sent by the controller includes:
[0044] Determining a feedback method for telemetry task configuration according to the telemetry data packet;
[0045] After the telemetry task configuration is completed, sending feedback information of the telemetry task configuration to the controller in a feedback manner of the first mode or a feedback manner of the second mode;
[0046] The feedback method of the first mode includes: the destination network node feeds back the feedback information of the telemetry task configuration to the controller;
[0047] The feedback manner of the second mode includes: each node in the target flow feeds back first information to the controller, and the first information includes the header of the telemetry task data packet and the ID and port of the current node.
[0048] To achieve the above object, an embodiment of the present invention provides a network telemetry method, which is applied to a controller and includes:
[0049] Sending a telemetry data packet to a network node; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node performing the telemetry task;
[0050] Receive telemetry result data sent by the network node.
[0051] Furthermore, the telemetry data packet includes:
[0052] Telemetry task configuration data packet, and / or, telemetry result query data packet.
[0053] Further, the telemetry data packet includes: header data and payload data;
[0054] The packet header data includes the following information: source network node IP address, destination network node IP address, source network node port, destination network node port and protocol number of the target flow;
[0055] The payload data includes: in-band network telemetry INT data.
[0056] Further, the in-band network telemetry INT data includes: a header structure and a data structure;
[0057] The header structure includes: the type of the telemetry data packet and the feedback mode of the telemetry task configuration;
[0058] The data structure includes: telemetry task configuration mode, telemetry indicator data and telemetry result reporting method.
[0059] Furthermore, in the case where the telemetry data packet is a telemetry result query data packet, before sending the telemetry data packet to the network node, the method includes:
[0060] A telemetry data packet including a telemetry task configuration data packet is sent to the source network node.
[0061] Further, the receiving the telemetry result data sent by the network node includes:
[0062] Receive the telemetry result data sent by the destination network node in the target flow.
[0063] Furthermore, the telemetry task configuration modes include: adding, revoking and overwriting;
[0064] The telemetry indicator data includes: a telemetry indicator type and a preset threshold value of each telemetry indicator, wherein the telemetry indicator type includes at least one of the following: random packet loss, average queuing delay, maximum queuing delay, minimum queuing delay, queuing delay jitter, flow size of the target flow, number of data packets of the target flow, and path attribute of the target flow;
[0065] The telemetry result reporting methods include: threshold driven reporting and active detection reporting.
[0066] Furthermore, the feedback mode of the telemetry task configuration includes: a first mode feedback mode and a second mode feedback mode;
[0067] In a case where the feedback mode configured in the telemetry task is the feedback mode of the first mode, before receiving the telemetry result data sent by the network node, the method further includes:
[0068] If feedback information of the telemetry task configuration sent by the destination network node according to the telemetry data packet is not received, repeatedly sending the telemetry data packet in the feedback mode of the first mode to the network node;
[0069] After repeatedly sending the telemetry data packet in the feedback mode of the first mode to the network node, if the feedback information is not received, sending the telemetry data packet in the feedback mode of the second mode to the network node;
[0070] The feedback method of the first mode includes: the destination network node feeds back the telemetry task configuration data packet to the controller;
[0071] The feedback manner of the second mode includes: each node in the target flow feeds back first information to the controller, and the first information includes the header of the telemetry task data packet and the ID and port of the current node.
[0072] To achieve the above object, an embodiment of the present invention provides a network telemetry device, which is applied to a network node device, including:
[0073] A first receiving module is used to receive a telemetry data packet sent by a controller; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node executing the telemetry task;
[0074] An acquisition module, used for acquiring telemetry result data according to the telemetry data packet;
[0075] The first sending module is used to send the telemetry result data to the controller.
[0076] To achieve the above object, an embodiment of the present invention provides a network telemetry device, which is applied to a controller and includes:
[0077] A second sending module is used to send a telemetry data packet to a network node; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node performing the telemetry task;
[0078] The second receiving module is used to receive the telemetry result data sent by the network node.
[0079] To achieve the above object, an embodiment of the present invention provides a network node device, including: a transceiver and a processor;
[0080] The transceiver is used to receive a telemetry data packet sent by the controller; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query the telemetry result data obtained by the network node performing the telemetry task;
[0081] The processor is used to obtain telemetry result data according to the telemetry data packet;
[0082] The transceiver is also used to send the telemetry result data to the controller.
[0083] To achieve the above object, an embodiment of the present invention provides a controller, including: a transceiver;
[0084] The transceiver is used to send a telemetry data packet to a network node; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node performing a telemetry task;
[0085] Receive telemetry result data sent by the network node.
[0086] To achieve the above-mentioned purpose, an embodiment of the present invention provides a terminal device, a transceiver, a processor, a memory, and a program or instruction stored in the memory and executable on the processor; when the processor executes the program or instruction, the network telemetry method as described above is implemented.
[0087] To achieve the above objective, an embodiment of the present invention provides a readable storage medium having a program or instruction stored thereon, and the program or instruction, when executed by a processor, implements the steps in the network telemetry method as described above.
[0088] The beneficial effects of the above technical solution of the present invention are as follows:
[0089] The network telemetry method of the embodiment of the present invention receives a telemetry data packet sent by a controller, configures a telemetry task for a network node, and / or queries the telemetry result data obtained by the network node executing the telemetry task, thereby obtaining telemetry result data, and can obtain relatively comprehensive telemetry result data. The scheme of the present invention performs telemetry on network traffic at the network node according to the telemetry task configuration data packet, and analyzes and calculates the telemetry result data. The telemetry result data is reported to the controller only according to the telemetry result query data packet, thereby reducing the controller's overhead for analyzing and calculating the telemetry data. The problem in the prior art that the network telemetry flow detection technology cannot guarantee the network bandwidth and computing overhead while obtaining relatively comprehensive network status information is solved. BRIEF DESCRIPTION OF THE DRAWINGS
[0090] Figure 1A schematic diagram of the steps of a network telemetry method applied to a network node device according to an embodiment of the present invention;
[0091] Figure 2 A schematic diagram of the structure of a telemetry data packet according to an embodiment of the present invention;
[0092] Figure 3 A schematic diagram of the steps of a network telemetry method applied to a controller according to an embodiment of the present invention;
[0093] Figure 4 This is a schematic diagram of the steps of a telemetry method in which the telemetry result reporting method of an embodiment of the present invention is active detection and reporting;
[0094] Figure 5 This is one of the structural schematic diagrams of the network telemetry device according to an embodiment of the present invention;
[0095] Figure 6 This is a second structural diagram of the network telemetry device according to an embodiment of the present invention;
[0096] Figure 7 A schematic diagram of the structure of a network node device according to an embodiment of the present invention;
[0097] Figure 8 is a schematic diagram of the structure of a controller according to an embodiment of the present invention;
[0098] Fig. 9 It is a schematic diagram of the structure of a terminal device according to an embodiment of the present invention. DETAILED DESCRIPTION
[0099] In order to make the technical problems, technical solutions and advantages to be solved by the present invention more clear, a detailed description will be given below with reference to the accompanying drawings and specific embodiments.
[0100] It should be understood that the references to "one embodiment" or "an embodiment" throughout the specification mean that the specific features, structures, or characteristics associated with the embodiment are included in at least one embodiment of the present invention. Therefore, the references to "in one embodiment" or "in an embodiment" appearing throughout the specification do not necessarily refer to the same embodiment. In addition, these specific features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0101] In various embodiments of the present invention, it should be understood that the size of the serial numbers of the following processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
[0102] Additionally, the terms "system" and "network" are often used interchangeably herein.
[0103] In the embodiments provided in the present application, it should be understood that "B corresponding to A" means that B is associated with A, and B can be determined according to A. However, it should also be understood that determining B according to A does not mean determining B only according to A, and B can also be determined according to A and / or other information.
[0104] like Figure 1 As shown, a network telemetry method according to an embodiment of the present invention is applied to a network node device, comprising the following steps:
[0105] Step 101, receiving a telemetry data packet sent by a controller; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node executing the telemetry task;
[0106] Step 102, obtaining telemetry result data according to the telemetry data packet;
[0107] Step 103, sending the telemetry result data to the controller.
[0108] It should be noted that the network node device is a device that can be developed using P4 programmable data plane technology, such as existing commercial P4 switches and other customized switches or routing devices that support P4 programmable hardware chips.
[0109] Optionally, the receiving controller sends a telemetry data packet, including:
[0110] A source network node receives a telemetry data packet sent by the controller;
[0111] The source network node forwards the received telemetry data packet to the first network node of the next hop;
[0112] The network nodes in the flow forward the telemetry data packet in sequence until the data packet reaches the destination (sink) network node.
[0113] Optionally, the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node performing the telemetry task, which can be understood as:
[0114] The types of telemetry data packets include:
[0115] A telemetry task configuration data packet for performing telemetry task configuration on the network node; and / or
[0116] A telemetry result query data packet for querying the telemetry result data obtained by executing the telemetry task on the network node.
[0117] Optionally, the telemetry data packet can be understood as a telemetry probe.
[0118] Optionally, sending the telemetry result data to the controller includes:
[0119] The destination network node sends the telemetry result data to the controller; or,
[0120] Each of the network nodes in the target flow sends the telemetry result data to the controller.
[0121] Optionally, the target flow may be represented by a quintuple of a source network node IP address, a destination network node IP address, a source network node port, a destination network node port, and a protocol number.
[0122] In one embodiment of the present invention, the network telemetry method includes:
[0123] Receiving a telemetry task configuration data packet sent by the controller;
[0124] Configure the telemetry task according to the telemetry task configuration data packet;
[0125] Execute the telemetry task to obtain telemetry result data;
[0126] Comparing the telemetry indicator value in the telemetry result data with the corresponding stored preset threshold value;
[0127] If the telemetry index value is greater than the preset threshold, the telemetry result data is sent to the controller.
[0128] In one embodiment of the present invention, the network telemetry method includes:
[0129] Receiving a telemetry task configuration data packet sent by the controller;
[0130] Configure the telemetry task according to the telemetry task configuration data packet;
[0131] Execute the telemetry task (telemetry the network traffic of the monitored target flow in the P4 programmable data plane), obtain and save the telemetry result data;
[0132] Receiving a telemetry result query data packet sent by the controller;
[0133] According to the telemetry result query data packet, obtain the telemetry result data corresponding to the telemetry data packet in the stored telemetry result data;
[0134] The telemetry result data is reported to the controller.
[0135] Optionally, the configuration of performing the telemetry task includes:
[0136] The controller sends the telemetry task configuration data packet to the source network node of the target flow;
[0137] The source network node forwards the telemetry task configuration data packet according to the destination network node;
[0138] Each network node on the forwarding path configures the detection table of the target flow according to the INT data and instructions in the telemetry task configuration data packet;
[0139] The configuration of the detection table of the target flow includes:
[0140] Configure at least one of the five-tuple of the target flow, the telemetry indicator type, the telemetry reporting method, and the indicator type estimated monthly threshold.
[0141] The network telemetry method of the embodiment of the present invention receives a telemetry data packet sent by a controller, configures a telemetry task for a network node, and / or queries the telemetry result data obtained by the network node when executing the telemetry task, thereby obtaining telemetry result data, and can obtain relatively comprehensive telemetry result data. The scheme of the present invention performs telemetry on network traffic according to the telemetry task configuration data packet at the network node, and analyzes and calculates the telemetry result data. The telemetry result data is reported to the controller only according to the telemetry result query data packet, thereby reducing the controller's overhead of analyzing and calculating the telemetry data, and reducing the overhead of the amount of telemetry data reported. The problem in the prior art that the network telemetry flow detection technology cannot guarantee the network bandwidth and computing overhead while obtaining relatively comprehensive network status information is solved.
[0142] Optionally, the telemetry data packet includes: header data and payload data;
[0143] The packet header data includes the following information:
[0144] The source network node IP address, destination network node IP address, source network node port, destination network node port and protocol number of the target flow;
[0145] The payload data includes: in-band network telemetry INT data.
[0146] Optionally, the packet header of the telemetry data packet may be an IP / TCP header, or an IP / UDP header.
[0147] In the network telemetry method of the embodiment of the present invention, the controller can implement telemetry for the target flow by constructing a telemetry data packet carrying INT data.
[0148] Optionally, in-band network telemetry INT data includes:
[0149] Header structure and data structure;
[0150] The header structure includes: the type of the telemetry data packet and the feedback mode of the telemetry task configuration;
[0151] The data structure includes: telemetry task configuration mode, telemetry indicator data and telemetry result reporting method.
[0152] like Figure 2 As shown, in one embodiment of the present invention, the structure of the telemetry data packet includes a header and a payload;
[0153] The packet header may be an IP / TCP header or an IP / UDP header;
[0154] The passenger includes in-band network telemetry INT data;
[0155] The INT data includes an INT header and INT data.
[0156] In the network telemetry method of the embodiment of the present invention, the INT data includes parameters and instructions related to telemetry task configuration and telemetry result query; the INT data is carried by the telemetry data packet, so that the network node performs telemetry according to the INT data. In the solution of the present invention, INT is only loaded in the active probe header, and INT is not loaded in the production traffic header, which will not affect the forwarding function and performance of the production traffic data packet.
[0157] Optionally, when the telemetry data packet is a telemetry task configuration data packet, obtaining telemetry result data according to the telemetry data packet includes:
[0158] Configure the telemetry task according to the telemetry task configuration data packet;
[0159] Execute the telemetry task to obtain telemetry result data.
[0160] Optionally, the network node detects the path attribute of the target flow, including:
[0161] The source network node mirrors first packet header data identical to the packet header of the first packet according to the received first packet;
[0162] constructing a path attribute detection data packet according to the first packet header data;
[0163] The path attribute detection data packet is used to detect the path attribute of the target flow.
[0164] Optionally, the first packet header data may be an IP / TCP header, or an IP / UDP header.
[0165] Optionally, the reporting method of the path attribute index value obtained by performing the path attribute detection includes:
[0166] Threshold-driven reporting and active detection reporting.
[0167] In one embodiment of the present invention, if the reporting method of the path attribute indicator value is threshold-driven reporting, the threshold field of each path attribute indicator value is a value greater than 0; if the reporting method of the path attribute indicator value is active detection reporting, the threshold field of each path attribute indicator value is 0.
[0168] In one embodiment of the present invention, indicators with path attributes such as the accumulated average queuing delay of the entire path, the maximum / minimum queuing delay of all nodes in the entire path, the maximum / minimum number of random packet losses, etc., need to aggregate the local indicators in each node on the entire path, and need to collect the corresponding indicator data of each node, that is, to aggregate, calculate and temporarily store them at the destination network node (sink node).
[0169] Optionally, the telemetry result data includes: telemetry index values and path attribute detection index values.
[0170] Optionally, the configuration mode of the telemetry task includes:
[0171] Add, remove, and overwrite.
[0172] In one embodiment of the present invention, the configuration mode of the telemetry task is addition, and each network node on the path of the target flow adds a corresponding indicator type and a preset threshold corresponding to the indicator to the indicator list of the detection table of the five-tuple.
[0173] In one embodiment of the present invention, the configuration mode of the telemetry task is cancellation, and the detection table of each network node on the path of the target flow regarding the five-tuple is cancelled.
[0174] In one embodiment of the present invention, the configuration mode of the telemetry task is overlay, and each network node on the path of the target flow overlays the corresponding indicator type and the preset threshold corresponding to the indicator in the indicator list of the detection table of the five-tuple.
[0175] Optionally, when the telemetry data packet is a telemetry task configuration data packet, sending the telemetry result data to the controller includes:
[0176] Comparing the telemetry indicator value in the telemetry result data with the corresponding stored preset threshold value;
[0177] If the telemetry index value is greater than the preset threshold, the telemetry result data is sent to the controller.
[0178] The telemetry method of the embodiment of the present invention can configure the reporting method of the telemetry result data through the telemetry data packet according to the demand, thereby reducing the overall cost of telemetry.
[0179] Optionally, the telemetry result data is reported in a manner including:
[0180] Threshold-driven reporting and active detection reporting.
[0181] In one embodiment of the present invention, the reporting method of the telemetry result data is threshold-driven reporting, and the threshold field of each telemetry indicator is a value greater than 0; the reporting method of the telemetry result data is active detection reporting, and the threshold field of each telemetry indicator is 0.
[0182] Optionally, in the case where the telemetry data packet is a telemetry result query data packet, before receiving the telemetry data packet sent by the controller, the method further includes:
[0183] receiving a telemetry data packet including a telemetry task configuration data packet sent by the controller;
[0184] Configure the telemetry task according to the telemetry task configuration data packet;
[0185] Execute the telemetry task, obtain and save the telemetry result data.
[0186] Optionally, when the telemetry data packet is a telemetry result query data packet, the network node reports the telemetry result data according to the telemetry result query data packet, that is, the reporting method of the telemetry result data is active detection reporting.
[0187] The telemetry method of the embodiment of the present invention reports the telemetry result data to the controller by combining active (active detection reporting) and passive (threshold-driven reporting), thereby reducing the storage overhead on the controller side and the overall telemetry overhead.
[0188] Optionally, when the telemetry data packet is a telemetry result query data packet, obtaining telemetry result data according to the telemetry data packet includes:
[0189] According to the telemetry data packet, the telemetry result data corresponding to the telemetry data packet in the saved telemetry result data is obtained.
[0190] Optionally, when the telemetry data packet is a telemetry result query data packet, sending the telemetry result data to the controller includes:
[0191] The destination network node sends the telemetry result data (including the telemetry index value of each node and the path attribute index value) to the controller.
[0192] Optionally, the executing the telemetry task includes:
[0193] Determining the telemetry indicator type in the telemetry indicator data according to the telemetry task configuration data packet;
[0194] Execute the telemetry task according to the telemetry indicator type;
[0195] The telemetry indicator type includes at least one of the following: random packet loss, average queuing delay, maximum queuing delay, minimum queuing delay, queuing delay jitter, flow size of the target flow, number of data packets of the target flow, and path attributes of the target flow;
[0196] The telemetry result reporting methods include: threshold driven reporting and active detection reporting.
[0197] Optionally, executing the telemetry task according to the telemetry indicator type includes at least one of the following:
[0198] Determine a first data packet that matches the header of the telemetry data packet according to the header of the received data packet, then the number of the first data packets is used as the index value of the number of data packets of the target flow, and the number of bytes of the first data packet is used as the flow index of the target flow;
[0199] Acquire a first queuing delay for currently receiving the data packet, and update the average queuing delay according to the saved average queuing delay and the first queuing delay;
[0200] Acquire a first queuing delay for currently receiving the data packet, compare the first queuing delay with a maximum value of the saved queuing delay, and update the maximum value of the queuing delay;
[0201] Acquire a first queuing delay for currently receiving the data packet, compare the first queuing delay with the minimum value of the queuing delay saved in the first queuing delay, and update the minimum value of the queuing delay;
[0202] Obtaining a first queuing delay for currently receiving the data packet, and determining an indicator value of delay jitter according to the saved queuing delay of a previous data packet;
[0203] Determine a second data packet that matches the header of the telemetry data packet from a header of a data packet received by a first network node, and determine a third data packet that matches the header of the telemetry data packet from a header of a data packet received by a second network node, the difference between the number of the third data packet and the number of the second data packet is an indicator value of the random packet loss, and the first network node and the second network node are adjacent network nodes in the target flow;
[0204] Determine the index value of the path attribute, the path attribute index includes: the queuing delay of the path, the maximum and minimum queuing delays of the path, the number of packet losses of the path, and the flow size of the path.
[0205] In one embodiment of the present invention, after the telemetry configuration of the monitored flow (the target flow) is successful, for each node on the path from the source node to the sink node through which the monitored flow passes, for each data packet received at a preset time or for each data packet received, the data packet header (IP / TCP or IP / UDP) is copied, the header 5-tuple of the data packet is parsed, and matched with the 5-tuple in the monitoring table configured according to the telemetry configuration data packet; if the configured monitoring table contains the 5-tuple, the monitoring indicator list corresponding to the 5-tuple is selected, and the monitoring indicator list is used to record the measurement indicator value of the data packet of the flow corresponding to the 5-tuple at the node.
[0206] In one embodiment of the present invention, executing the telemetry task includes at least one of the following:
[0207] Monitoring the number of packets in a flow: Monitoring the number of packets in a flow is similar to random packet loss, which records the number of packets that pass through the node.
[0208] Traffic size of the monitored flow: This indicator records the number of bytes of the data packets of the flow passing through the node. Each time each node receives a data packet matching the 5-tuple of the monitored flow, the indicator value increases by the number of bytes of the data packet.
[0209] Monitor the average queuing delay: Each node, through hardware support, obtains the data packet p of the currently received target flow i The waiting time in the queue is d i , and calculate the current received p by sliding average i The average queuing delay at time: L i =(1-k)L i-1 +k*d i ; where L i-1 is the previous average queuing delay value saved, and the initial value is set to 0; since the P4 programmable data plane hardware does not support multiplication and division of arbitrary values, k can be 1 / 2, 1 / 2, and L i-1 Multiplication and 1 / 2 and d i The multiplication can be calculated by shift operations on the P4 programmable data plane hardware;
[0210] Monitor the maximum (or minimum) value of the queuing delay: The node obtains the data packet p of the target flow currently received i The waiting time in the queue is d i , and compare it with the current maximum (or minimum) value saved. If the current value d iIf it is larger (or smaller), update the current maximum (or minimum) value to d i , otherwise the current maximum value remains unchanged;
[0211] Monitoring queuing delay jitter: The node saves the previous data packet p i-1 The waiting time in the queue is d i-1 , for the currently arriving data packet p i The waiting time in the queue is d i , calculate and save the delay jitter index value J on the data plane i =d i -d i-1 , and use d i Update the previous queuing delay value;
[0212] Monitor random packet loss events: Every time each node receives a data packet that matches the 5-tuple of the monitored flow, the indicator value increases by 1; if a packet loss event occurs between two adjacent nodes, the number of packets c1 counted by the first node will be greater than the number of packets c2 counted by the second node; the number of packet loss between adjacent nodes is obtained by traversing each node of the target flow through the telemetry query probe when querying the telemetry results.
[0213] In one embodiment of the present invention, the path attribute supports monitoring of at least one of the following indicators:
[0214] Path-accumulated queueing delay: The path-accumulated queueing delay is the sum of the queueing delays of each node on the entire path. Assuming that the path attribute detection packet carries the INT indicator queueing delay p, each time it reaches a node, the node adds the queueing delay and p and updates p. After obtaining the queueing delay p of the entire path at the sink node, the path queueing delay p is stored on the sink node, including a 5-tuple, an indicator type, and an indicator value p. On the sink node, according to the path attribute p of each data packet, the method of monitoring the average queueing delay at each node as described above can be used to calculate the average delay of the path queueing delay p.
[0215] The maximum / minimum queuing delay of the entire path: This indicator is the maximum / minimum queuing delay of all nodes in the entire path; assume that the path attribute detection packet carries the INT indicator value maximum / minimum queuing delay m, and the node ID; each time a node is reached, the current queuing delay of the node is compared with m, and m is updated using the maximum / minimum value, and the corresponding node ID is updated; after obtaining the maximum / minimum queuing delay m of the entire path at the sink node, m is stored on the sink node, including a 5-tuple, indicator type, indicator value m, and node ID. According to the path attribute m of each data packet, the method of monitoring the average queuing delay at each node as described above can be used to calculate the average delay of the maximum / minimum queuing delay m of the path;
[0216] The maximum / minimum value of the number of random packet losses for the entire path: This indicator is the maximum / minimum value of the number of random packet losses between all adjacent nodes of the entire path; assuming that the path attribute detection packet carries the INT indicator value maximum / minimum random packet loss number k, the cumulative number of packets of the previous node c, the maximum / minimum value of the previous node ID and the next node ID; to the next node, assuming that the current cumulative number of packets of the node s n , by calculating k'=cs n , get the number of packet losses between the previous node and the current node. Compare k' with k, use the maximum / minimum value to update k, and use s n Update c, and update the previous node ID to the current node ID, and update the next node ID to the next node ID of the current node; settle according to the above steps at each node; after reaching the sink node, after calculation, obtain the maximum / minimum packet loss number k of the entire path, and store k on the sink node, including 5-tuple, indicator type, indicator value k, and the ID of the previous node and the next node corresponding to k;
[0217] The number of random packet losses along the entire path: This indicator is the number of packet losses along the entire path; assuming that the path attribute detection packet carries the INT indicator value, the number of packet losses L, and the cumulative number of data packets at the source node l s The path attribute detection packet does not take any action at the intermediate node. After reaching the sink node, the cumulative data packet obtained from the sink node is l e , calculate L = l s -l e , store L on the sink node, including the 5-tuple, indicator type, and indicator value L;
[0218] Traffic size of the monitored flow: This indicator is the traffic size of the monitored flow on the entire path, that is, the traffic size of the monitored flow seen by the first node source node on the path of the flow; in addition, the minimum traffic value of the entire path can also be calculated. The calculation method is similar to the calculation of the minimum queuing delay mentioned above.
[0219] Optionally, the receiving a telemetry data packet sent by the controller includes:
[0220] Determining a feedback method for telemetry task configuration according to the telemetry data packet;
[0221] After the telemetry task configuration is completed, sending feedback information of the telemetry task configuration to the controller in a feedback manner of the first mode or a feedback manner of the second mode;
[0222] The feedback method of the first mode includes: the destination network node feeds back the feedback information of the telemetry task configuration to the controller;
[0223] The feedback manner of the second mode includes: each node in the target flow feeds back first information to the controller, and the first information includes the header of the telemetry task data packet and the ID and port of the current node.
[0224] Optionally, the feedback mode of the first mode is passport mode, in which the telemetry data packet is forwarded according to the destination address until it reaches the sink node (that is, the last node on the telemetry path), and the sink node sends feedback information to the controller.
[0225] Optionally, the feedback mode of the second mode is a postcard mode, in which each node that forwards the telemetry data packet reports the header of the telemetry data packet, the forwarding node, and the port ID to the controller.
[0226] In one embodiment of the present invention, in passport mode, only when the telemetry data packet is forwarded to the end node of the path (that is, the sink node), if the sink node finds that the data packet is a telemetry configuration data packet, it sends feedback information to the controller, and the controller confirms that the corresponding telemetry configuration task is successfully completed based on the received feedback information.
[0227] like Figure 3 As shown, a network telemetry method according to an embodiment of the present invention is applied to a controller, comprising the following steps:
[0228] Step 301, sending a telemetry data packet to a network node; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node performing the telemetry task;
[0229] Step 303: Receive telemetry result data sent by the network node.
[0230] Optionally, sending the telemetry data packet to the network node includes:
[0231] The telemetry data packet is sent to a source network node of the target flow.
[0232] The network telemetry method of the embodiment of the present invention receives a telemetry data packet sent by a controller, configures a telemetry task for a network node, and / or queries the telemetry result data obtained by the network node executing the telemetry task, thereby obtaining telemetry result data, and can obtain relatively comprehensive telemetry result data. The scheme of the present invention performs telemetry on network traffic at the network node according to the telemetry task configuration data packet, and analyzes and calculates the telemetry result data. The telemetry result data is reported to the controller only according to the telemetry result query data packet, thereby reducing the controller's overhead for analyzing and calculating the telemetry data. The problem in the prior art that the network telemetry flow detection technology cannot guarantee the network bandwidth and computing overhead while obtaining relatively comprehensive network status information is solved.
[0233] Optionally, the telemetry data packet includes:
[0234] Telemetry task configuration data packet, and / or, telemetry result query data packet.
[0235] Optionally, the telemetry data packet includes: header data and payload data;
[0236] The packet header data includes the following information: source network node IP address, destination network node IP address, source network node port, destination network node port and protocol number of the target flow;
[0237] The payload data includes: in-band network telemetry INT data.
[0238] Optionally, the in-band network telemetry INT data includes: a header structure and a data structure;
[0239] The header structure includes: the type of the telemetry data packet and the feedback mode of the telemetry task configuration;
[0240] The data structure includes: telemetry task configuration mode, telemetry indicator data and telemetry result reporting method.
[0241] Optionally, in the case where the telemetry data packet is a telemetry result query data packet, before sending the telemetry data packet to the network node, the step includes:
[0242] A telemetry data packet including a telemetry task configuration data packet is sent to the source network node.
[0243] Optionally, the receiving telemetry result data sent by the network node includes:
[0244] Receive the telemetry result data sent by the destination network node in the target flow. Optionally, the telemetry task configuration mode includes: adding, revoking and overwriting;
[0245] The telemetry indicator data includes: a telemetry indicator type and a preset threshold value of each telemetry indicator, wherein the telemetry indicator type includes at least one of the following: random packet loss, average queuing delay, maximum queuing delay, minimum queuing delay, queuing delay jitter, flow size of the target flow, number of data packets of the target flow, and path attribute of the target flow;
[0246] The telemetry result reporting methods include: threshold driven reporting and active detection reporting.
[0247] Optionally, the feedback mode of the telemetry task configuration includes: a first mode feedback mode and a second mode feedback mode;
[0248] In a case where the feedback mode configured in the telemetry task is the feedback mode of the first mode, before receiving the telemetry result data sent by the network node, the method further includes:
[0249] If feedback information of the telemetry task configuration sent by the destination network node according to the telemetry data packet is not received, repeatedly sending the telemetry data packet in the feedback mode of the first mode to the network node;
[0250] After repeatedly sending the telemetry data packet in the feedback mode of the first mode to the network node, if the feedback information is not received, sending the telemetry data packet in the feedback mode of the second mode to the network node;
[0251] The feedback method of the first mode includes: the destination network node feeds back the telemetry task configuration data packet to the controller;
[0252] The feedback manner of the second mode includes: each node in the target flow feeds back first information to the controller, and the first information includes the header of the telemetry task data packet and the ID and port of the current node.
[0253] Optionally, if the controller does not receive feedback information of the telemetry task configuration sent by the destination network node according to the telemetry data packet, it can be understood that the telemetry task configuration of at least one network node in the target flow is unsuccessful.
[0254] In one embodiment of the present invention, when the feedback mode is a feedback mode of the first mode,
[0255] If feedback information of the telemetry task configuration sent by the destination network node according to the telemetry data packet is not received, repeatedly sending the telemetry data packet in the feedback mode of the first mode to the network node;
[0256] After repeatedly sending the telemetry data packet in the feedback mode of the first mode to the network node for a preset number of times, if no feedback information is received, sending the telemetry data packet in the feedback mode of the second mode to the network node;
[0257] The number of times of repeatedly sending the telemetry data packet in the feedback mode of the first mode is set according to demand.
[0258] like Figure 4 As shown, in one embodiment of the present invention, the telemetry result reporting method is a telemetry method of active detection and reporting:
[0259] The controller sends a telemetry task configuration probe (data packet) to a source node (source node) of the target flow;
[0260] After receiving the telemetry task configuration probe, the source node forwards it to the next hop node of the target flow, and forwards it successively until the telemetry task probe reaches the destination node (sink node) of the target flow;
[0261] The nodes in the target flow configure the telemetry task according to the telemetry task configuration probe, and execute the telemetry task to obtain the telemetry result;
[0262] The controller sends a telemetry task query probe to a source node (source node) of the target flow;
[0263] After receiving the telemetry task query probe, the source node forwards it to the next hop node of the target flow, and forwards it successively until the telemetry task query probe reaches the destination node (sink node) of the target flow;
[0264] The destination node (sink node) collects and calculates the telemetry result data and sends the telemetry result to the controller.
[0265] like Figure 5 As shown, a network telemetry device 500 according to an embodiment of the present invention is applied to a network node device, including:
[0266] The first receiving module 501 is used to receive a telemetry data packet sent by the controller; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query the telemetry result data obtained by the network node performing the telemetry task;
[0267] An acquisition module 502 is used to obtain telemetry result data according to the telemetry data packet;
[0268] The first sending module 503 is used to send the telemetry result data to the controller.
[0269] The network telemetry device of the embodiment of the present invention receives a telemetry data packet sent by a controller, configures a telemetry task for a network node, and / or queries the telemetry result data obtained by the network node when executing the telemetry task, thereby obtaining telemetry result data, and can obtain relatively comprehensive telemetry result data. The scheme of the present invention performs telemetry on network traffic according to the telemetry task configuration data packet at the network node, as well as analyzes and calculates the telemetry result data, and reports the telemetry result data to the controller only according to the telemetry result query data packet, thereby reducing the controller's overhead for analyzing and calculating the telemetry data, and reducing the overhead for reporting the telemetry results. The problem in the prior art that the network telemetry flow detection technology cannot guarantee the network's bandwidth and computing overhead while obtaining relatively comprehensive network status information is solved.
[0270] like Figure 6 As shown, a network telemetry device 600 according to an embodiment of the present invention is applied to a controller, including:
[0271] The second sending module 601 is used to send a telemetry data packet to a network node; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node performing the telemetry task;
[0272] The second receiving module 602 is used to receive the telemetry result data sent by the network node.
[0273] The network telemetry device of the embodiment of the present invention receives a telemetry data packet sent by a controller, configures a telemetry task for a network node, and / or queries the telemetry result data obtained by the network node when executing the telemetry task, thereby obtaining telemetry result data, and can obtain relatively comprehensive telemetry result data. The scheme of the present invention performs telemetry on network traffic according to the telemetry task configuration data packet at the network node, as well as analyzes and calculates the telemetry result data, and reports the telemetry result data to the controller only according to the telemetry result query data packet, thereby reducing the controller's overhead for analyzing and calculating the telemetry data, and reducing the overhead for reporting the telemetry results. The problem in the prior art that the network telemetry flow detection technology cannot guarantee the network's bandwidth and computing overhead while obtaining relatively comprehensive network status information is solved.
[0274] like Figure 7 As shown, a network node device 700 according to an embodiment of the present invention includes: a transceiver 720 and a processor 710;
[0275] The transceiver is used to receive a telemetry data packet sent by the controller; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query the telemetry result data obtained by the network node performing the telemetry task;
[0276] The processor is used to obtain telemetry result data according to the telemetry data packet;
[0277] The transceiver is also used to send the telemetry result data to the controller.
[0278] The network node device of the embodiment of the present invention receives the telemetry data packet sent by the controller, configures the telemetry task of the network node, and / or queries the telemetry result data obtained by the network node executing the telemetry task, thereby obtaining the telemetry result data, and can obtain more comprehensive telemetry result data. The scheme of the present invention performs telemetry on the network traffic according to the telemetry task configuration data packet at the network node, and analyzes and calculates the telemetry result data. The telemetry result data will be reported to the controller only according to the telemetry result query data packet, thereby reducing the controller's overhead for analyzing and calculating the telemetry data. The problem in the prior art that the network telemetry flow detection technology cannot guarantee the network bandwidth and computing overhead while obtaining more comprehensive network status information is solved.
[0279] like Figure 8 As shown, a controller 800 according to an embodiment of the present invention includes a transceiver 810, wherein:
[0280] The transceiver is used to send a telemetry data packet to a network node; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node performing a telemetry task;
[0281] Receive telemetry result data sent by the network node.
[0282] The controller of the embodiment of the present invention receives a telemetry data packet sent by the controller, configures the telemetry task of the network node, and / or queries the telemetry result data obtained by the network node executing the telemetry task, thereby obtaining the telemetry result data, and can obtain more comprehensive telemetry result data. The scheme of the present invention performs telemetry on the network traffic according to the telemetry task configuration data packet at the network node, and analyzes and calculates the telemetry result data. The telemetry result data will be reported to the controller only according to the telemetry result query data packet, thereby reducing the controller's overhead for analyzing and calculating the telemetry data. The problem in the prior art that the network telemetry flow detection technology cannot guarantee the network bandwidth and computing overhead while obtaining more comprehensive network status information is solved.
[0283] A terminal device according to another embodiment of the present invention, such as Fig. 9As shown, it includes a transceiver 910, a processor 900, a memory 920, and a program or instruction stored in the memory 920 and executable on the processor 900; when the processor 900 executes the program or instruction, the above-mentioned method applied to network telemetry is implemented.
[0284] The transceiver 910 is used to receive and send data under the control of the processor 900 .
[0285] Among them, Fig. 9 In the embodiment, the bus architecture may include any number of interconnected buses and bridges, specifically one or more processors represented by processor 900 and various circuits of memory represented by memory 920 are linked together. The bus architecture may also link together various other circuits such as peripherals, voltage regulators, and power management circuits, which are well known in the art and are therefore not further described herein. The bus interface provides an interface. The transceiver 910 may be a plurality of components, namely, a transmitter and a receiver, providing a unit for communicating with various other devices on a transmission medium. For different user devices, the user interface 930 may also be an interface capable of externally and internally connecting required devices, and the connected devices include but are not limited to a keypad, a display, a speaker, a microphone, a joystick, and the like.
[0286] The processor 900 is responsible for managing the bus architecture and general processing, and the memory 920 can store data used by the processor 900 when performing operations.
[0287] The terminal device of the embodiment of the present invention receives the telemetry data packet sent by the controller, configures the telemetry task of the network node, and / or queries the telemetry result data obtained by the network node executing the telemetry task, thereby obtaining the telemetry result data, and can obtain more comprehensive telemetry result data. The scheme of the present invention performs telemetry on the network traffic according to the telemetry task configuration data packet at the network node, and analyzes and calculates the telemetry result data. The telemetry result data will be reported to the controller only according to the telemetry result query data packet, thereby reducing the controller's overhead for analyzing and calculating the telemetry data. The problem in the prior art that the network telemetry flow detection technology cannot guarantee the network bandwidth and computing overhead while obtaining more comprehensive network status information is solved.
[0288] A readable storage medium according to an embodiment of the present invention stores a program or instruction thereon. When the program or instruction is executed by a processor, the steps in the network telemetry method described above are implemented and the same technical effect can be achieved. To avoid repetition, it will not be described here.
[0289] The processor is the processor in the terminal device described in the above embodiment. The readable storage medium includes a computer readable storage medium, such as a computer read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0290] It should be further explained that the terminals described in this specification include but are not limited to smart phones, tablet computers, etc., and many of the functional components described are called modules in order to more particularly emphasize the independence of their implementation methods.
[0291] In the embodiment of the present invention, module can be implemented with software so that it can be executed by various types of processors. For example, an executable code module of an identification can include one or more physical or logical blocks of computer instructions, for example, it can be constructed as an object, process or function. Nevertheless, the executable code of the identified module does not need to be physically located together, but can include different instructions stored in different positions, and when these instructions are logically combined together, it constitutes a module and realizes the specified purpose of the module.
[0292] In fact, executable code module can be a single instruction or many instructions, and can even be distributed on a plurality of different code segments, distributed among different programs, and distributed across a plurality of memory devices. Similarly, operating data can be identified in the module, and can be implemented and organized in the data structure of any appropriate type according to any appropriate form. The operating data can be collected as a single data set, or can be distributed in different locations (including on different storage devices), and can only be present on a system or network as an electronic signal at least in part.
[0293] When a module can be implemented by software, considering the level of existing hardware technology, a person skilled in the art can build a corresponding hardware circuit to implement the corresponding function of the module that can be implemented by software without considering the cost. The hardware circuit includes a conventional very large scale integration (VLSI) circuit or gate array and existing semiconductors such as logic chips, transistors, or other discrete components. The module can also be implemented by a programmable hardware device, such as a field programmable gate array, a programmable array logic, a programmable logic device, etc.
[0294] The above exemplary embodiments are described with reference to the accompanying drawings, and many different forms and embodiments are feasible without departing from the spirit and teachings of the present invention. Therefore, the present invention should not be constructed as a limitation of the exemplary embodiments proposed herein. More specifically, these exemplary embodiments are provided so that the present invention will be perfect and complete, and the scope of the present invention will be conveyed to those who are familiar with the technology. In these figures, the component sizes and relative sizes may be exaggerated for clarity. The terms used here are only based on the purpose of describing specific exemplary embodiments and are not intended to be limiting. As used herein, unless the text clearly indicates otherwise, the singular forms "one", "an" and "the" are intended to include these multiple forms. It will be further understood that the terms "including" and / or "comprising" when used in this specification indicate the presence of the features, integers, steps, operations, components and / or components, but do not exclude the presence or increase of one or more other features, integers, steps, operations, components, components and / or their groups. Unless otherwise indicated, when stated, a range of values includes the upper and lower limits of that range and any subranges therebetween.
[0295] The above is a preferred embodiment of the present invention. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present invention. These improvements and modifications should also be regarded as the scope of protection of the present invention.
Claims
1. A network telemetry method, applied to a network node device, characterized in that: include: Receive a telemetry data packet sent by a controller; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node performing the telemetry task; Obtaining telemetry result data according to the telemetry data packet; The telemetry result data is sent to the controller.
2. The network telemetry method according to claim 1, characterized in that: The telemetry data packet includes: header data and payload data; The packet header data includes the following information: The source network node IP address, destination network node IP address, source network node port, destination network node port and protocol number of the target flow; The payload data includes: In-band Network Telemetry INT (In-band Network Telemetry) data.
3. The network telemetry method according to claim 2, characterized in that: In-band network telemetry INT data includes: Header structure and data structure; The header structure includes: the type of the telemetry data packet and the feedback mode of the telemetry task configuration; The data structure includes: telemetry task configuration mode, telemetry indicator data and telemetry result reporting method.
4. The network telemetry method according to claim 2, characterized in that: In the case where the telemetry data packet is a telemetry task configuration data packet, obtaining telemetry result data according to the telemetry data packet includes: Configure the telemetry task according to the telemetry task configuration data packet; Execute the telemetry task to obtain telemetry result data.
5. The network telemetry method according to claim 4, characterized in that: Sending telemetry result data to the controller includes: Comparing the telemetry indicator value in the telemetry result data with a preset threshold value; If the telemetry index value is greater than the preset threshold, the telemetry result data is sent to the controller; The preset threshold is a threshold configured according to the telemetry task configuration data packet.
6. The network telemetry method according to claim 2, characterized in that: In the case where the telemetry data packet is a telemetry result query data packet, before receiving the telemetry data packet sent by the controller, the method further includes: receiving a telemetry data packet including a telemetry task configuration data packet sent by the controller; Configure the telemetry task according to the telemetry task configuration data packet; Execute the telemetry task, obtain and save the telemetry result data.
7. The network telemetry method according to claim 6, characterized in that: According to the telemetry data packet, telemetry result data is obtained, including: According to the telemetry data packet, the telemetry result data corresponding to the telemetry data packet in the saved telemetry result data is obtained.
8. The network telemetry method according to claim 4 or 6, characterized in that: The performing of the telemetry task comprises: Determining the telemetry indicator type in the telemetry indicator data according to the telemetry task configuration data packet; Execute the telemetry task according to the telemetry indicator type; The telemetry indicator type includes at least one of the following: random packet loss, average queuing delay, maximum queuing delay, minimum queuing delay, queuing delay jitter, flow size of the target flow, number of data packets of the target flow, and path attributes of the target flow; The telemetry result reporting methods include: threshold driven reporting and active detection reporting.
9. The network telemetry method according to claim 8, characterized in that: Executing the telemetry task according to the telemetry indicator type includes at least one of the following: Determine a first data packet that matches the header of the telemetry data packet according to the header of the received data packet, then the number of the first data packets is used as the index value of the number of data packets of the target flow, and the number of bytes of the first data packet is used as the flow index of the target flow; Acquire a first queuing delay for currently receiving the data packet, and update the average queuing delay according to the saved average queuing delay and the first queuing delay; Acquire a first queuing delay for currently receiving the data packet, compare the first queuing delay with a maximum value of the saved queuing delay, and update the maximum value of the queuing delay; Acquire a first queuing delay for currently receiving the data packet, compare the first queuing delay with the minimum value of the queuing delay saved in the first queuing delay, and update the minimum value of the queuing delay; Obtaining a first queuing delay for currently receiving the data packet, and determining an indicator value of delay jitter according to the saved queuing delay of a previous data packet; Determine a second data packet that matches the header of the telemetry data packet according to a header of the data packet received by the first network node, and determine a third data packet that matches the header of the telemetry data packet according to a header of the data packet received by the second network node, the difference between the number of the third data packet and the number of the second data packet is the indicator value of the random packet loss, and the first network node and the second network node are adjacent network nodes in the target flow; Determine the index value of the path attribute, wherein the path attribute includes: the queuing delay of the path, the maximum and minimum queuing delays of the path, the number of packet losses of the path, and the flow size of the path.
10. The network telemetry method according to claim 3, characterized in that: The receiving of the telemetry data packet sent by the controller comprises: Determining a feedback method of the telemetry task configuration according to the telemetry data packet; After the telemetry task configuration is completed, sending feedback information of the telemetry task configuration to the controller in a feedback manner of the first mode or a feedback manner of the second mode; The feedback method of the first mode includes: the destination network node feeds back the feedback information of the telemetry task configuration to the controller; The feedback manner of the second mode includes: each node in the target flow feeds back first information to the controller, and the first information includes the header of the telemetry task data packet and the ID and port of the current node.
11. A network telemetry method, applied to a controller, characterized in that: include: Sending a telemetry data packet to a network node; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node performing the telemetry task; Receive telemetry result data sent by the network node.
12. The network telemetry method according to claim 11, characterized in that: The telemetry data packet includes: Telemetry task configuration data packet, and / or, telemetry result query data packet.
13. The network telemetry method according to claim 12, characterized in that: The telemetry data packet includes: header data and payload data; The packet header data includes the following information: source network node IP address, destination network node IP address, source network node port, destination network node port and protocol number of the target flow; The payload data includes: in-band network telemetry INT data.
14. The network telemetry method according to claim 13, characterized in that: The in-band network telemetry INT data includes: a header structure and a data structure; The header structure includes: the type of the telemetry data packet and the feedback mode of the telemetry task configuration; The data structure includes: telemetry task configuration mode, telemetry indicator data and telemetry result reporting method.
15. The network telemetry method according to claim 13, characterized in that: In the case where the telemetry data packet is a telemetry result query data packet, before sending the telemetry data packet to the network node, the method includes: A telemetry data packet including a telemetry task configuration data packet is sent to the source network node.
16. The network telemetry method according to claim 13, characterized in that: The receiving the telemetry result data sent by the network node includes: Receive the telemetry result data sent by the destination network node in the target flow.
17. The network telemetry method according to claim 14, characterized in that: The telemetry task configuration modes include: adding, revoking and overwriting; The telemetry indicator data includes: a telemetry indicator type and a preset threshold value of each telemetry indicator, wherein the telemetry indicator type includes at least one of the following: random packet loss, average queuing delay, maximum queuing delay, minimum queuing delay, queuing delay jitter, flow size of the target flow, number of data packets of the target flow, and path attribute of the target flow; The telemetry result reporting methods include: threshold driven reporting and active detection reporting.
18. The network telemetry method according to claim 14, characterized in that: The feedback mode of the telemetry task configuration includes: a first mode feedback mode and a second mode feedback mode; In a case where the feedback mode configured in the telemetry task is the feedback mode of the first mode, before receiving the telemetry result data sent by the network node, the method further includes: If feedback information of the telemetry task configuration sent by the destination network node according to the telemetry data packet is not received, repeatedly sending the telemetry data packet in the feedback mode of the first mode to the network node; After repeatedly sending the telemetry data packet in the feedback mode of the first mode to the network node, if the feedback information is not received, sending the telemetry data packet in the feedback mode of the second mode to the network node; The feedback method of the first mode includes: the destination network node feeds back the telemetry task configuration data packet to the controller; The feedback manner of the second mode includes: each node in the target flow feeds back first information to the controller, and the first information includes the header of the telemetry task data packet and the ID and port of the current node.
19. A network telemetry device, applied to a network node device, characterized in that: include: A first receiving module is used to receive a telemetry data packet sent by a controller; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node executing the telemetry task; An acquisition module, used for acquiring telemetry result data according to the telemetry data packet; The first sending module is used to send the telemetry result data to the controller.
20. A network telemetry device, applied to a controller, characterized in that: include: A second sending module is used to send a telemetry data packet to a network node; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node performing the telemetry task; The second receiving module is used to receive the telemetry result data sent by the network node.
21. A network node device, characterized in that: include: transceivers and processors; The transceiver is used to receive a telemetry data packet sent by the controller; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query the telemetry result data obtained by the network node performing the telemetry task; The processor is used to obtain telemetry result data according to the telemetry data packet; The transceiver is also used to send the telemetry result data to the controller.
22. A controller, characterized in that: include: Transceiver; The transceiver is used to send a telemetry data packet to a network node; wherein the telemetry data packet is used to: configure a telemetry task for the network node, and / or query telemetry result data obtained by the network node performing a telemetry task; Receive telemetry result data sent by the network node.
23. A terminal device, comprising: A transceiver, a processor, a memory, and a program or instruction stored in the memory and executable on the processor; characterized in that when the processor executes the program or instruction, the network telemetry method as described in any one of claims 1 to 10 is implemented; or, the network telemetry method as described in any one of claims 11 to 18 is implemented.
24. A readable storage medium having a program or instruction stored thereon, characterized in that: When the program or instruction is executed by the processor, the steps in the network telemetry method as described in any one of claims 1-10 are implemented; or, the steps in the network telemetry method as described in any one of claims 11-18 are implemented.
Citation Information
Patent Citations
Intelligent fusion identification network state prediction and congestion control system
CN111526096A
In-band network telemetry bearer flow selection method and system
CN111835588A
In-band network telemetering method and device, electronic equipment and storage medium
CN113242142A
Hybrid telemetering method and system based on hierarchical trusted flow
CN115442275A
INT and machine learning-based service quality prediction method
CN115766482A
