CN113242142A - In-band network telemetry method, device, electronic equipment and storage medium - Google Patents

In-band network telemetry method, device, electronic equipment and storage medium Download PDF

Info

Publication number
CN113242142A
CN113242142A CN202110396664.4A CN202110396664A CN113242142A CN 113242142 A CN113242142 A CN 113242142A CN 202110396664 A CN202110396664 A CN 202110396664A CN 113242142 A CN113242142 A CN 113242142A
Authority
CN
China
Prior art keywords
data stream
telemetry
target data
type
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110396664.4A
Other languages
Chinese (zh)
Other versions
CN113242142B (en
Inventor
徐明伟
王瑞浩
陈平平
林耘森箫
刘博文
倪永峰
周禹
王旸旸
吴建平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Tsinghua University
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tsinghua University, Beijing Dajia Internet Information Technology Co Ltd filed Critical Tsinghua University
Priority to CN202110396664.4A priority Critical patent/CN113242142B/en
Publication of CN113242142A publication Critical patent/CN113242142A/en
Application granted granted Critical
Publication of CN113242142B publication Critical patent/CN113242142B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • H04L47/2433Allocation of priorities to traffic types

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Telephonic Communication Services (AREA)
  • Selective Calling Equipment (AREA)

Abstract

The disclosure relates to an in-band network telemetering method, an in-band network telemetering device, electronic equipment and a storage medium, relates to the technical field of network communication, and aims to solve the problems that when a large-range network is remotely detected in the related technology, a larger processing data amount needs to be faced, the process is complex, and resource consumption is easily caused. The disclosed method comprises the following steps: determining an in-band network telemetry strategy based on the received first type of telemetry information of each data stream within a set time length; determining a target data stream based on an in-band network telemetry strategy, and informing switching equipment to perform data stream telemetry on the target data stream; and receiving second type of telemetering information of the target data stream reported by the switching equipment, and carrying out telemetering analysis through the first type of telemetering information and the second type of telemetering information of the target data stream. The invention provides an extensible data center full-network-range in-band network telemetry method, which is simple in process, only carries out telemetry on a target data stream, reduces the processed data volume and effectively reduces the resource consumption.

Description

In-band network telemetry method, device, electronic equipment and storage medium
Technical Field
The present disclosure relates to the field of network communication technologies, and in particular, to an in-band network telemetry method, an in-band network telemetry device, an in-band network telemetry apparatus, an electronic device, and a storage medium.
Background
With the advent of business applications and the ever-increasing size of users, networks have been characterized as "high-rate, large-scale, multi-access, unpredictable". Traditional network management and control methods and means have been difficult to solve the challenges of existing networks and future networks. Timely obtaining internal dynamic and traffic statistical information of a network is important for network management, because it enables network management personnel to detect and correct network configuration errors, efficiently allocate resources and perform traffic scheduling, and timely detect network attacks.
In-band Network Telemetry (INT) is a basic means and data source for Network management and control, has the advantage of fine granularity, and can monitor more transient faults in a Network. However, the method is only suitable for small-range remote measurement, and when the whole data center network range is remotely measured based on the technology, a larger data processing amount needs to be faced, the process is complex, and resource consumption is easily caused.
Disclosure of Invention
The disclosure provides an in-band network telemetry method, an in-band network telemetry device, an electronic device and a storage medium, which are used for solving at least the problems that when a large-range network is remotely monitored in the related art, a larger data processing amount needs to be faced, the process is complex, and resource consumption is easily caused. The technical scheme of the disclosure is as follows:
according to a first aspect of an embodiment of the present disclosure, there is provided an in-band network telemetry method, including:
determining an in-band network telemetry strategy based on received first type telemetry information of each data stream within a set time length, wherein the first type telemetry information is reported by a switching device in a network to be tested, and the first type telemetry information of each data stream is used for representing the transmission state of the corresponding data stream;
determining a target data stream based on the in-band network telemetry strategy, and informing the switching equipment to perform data stream telemetry on the target data stream, wherein the target data stream is a data stream needing telemetry in each data stream;
and receiving second type of telemetering information of the target data stream reported by the switching equipment, and carrying out telemetering analysis through the first type of telemetering information and the second type of telemetering information of the target data stream.
In an optional embodiment, the first type of telemetry information is reported periodically by the switching device, and the first type of telemetry information of each data stream in the set time duration is the first type of telemetry information of each data stream in a period; and/or
The second type of telemetry information is generated from sampled data of the target data stream.
In an optional embodiment, the in-band network telemetry strategy comprises identification information of a data stream to be telemetered and a sampling rate for sampling the data stream in the telemetry process;
the determining an in-band network telemetry strategy based on the received first type of telemetry information of each data stream within a set time duration comprises:
determining a target data stream needing telemetry in the period based on the first type of telemetry information of each data stream received in the period;
and taking the identification information of the target data stream as the identification information in the in-band network telemetry strategy of the period, and taking the sampling rate of the target data stream as the sampling rate in the in-band network telemetry strategy of the period.
In an alternative embodiment, the sample rate of the target data stream is determined by:
if the target data stream is not telemetered in the previous period, taking a preset initial sampling rate as a sampling rate corresponding to the target data stream in the current period;
and if the target data stream is telemetered in the previous period, determining the sampling rate corresponding to the target data stream in the current period based on the second type of telemetering information corresponding to the target data stream in the previous period.
In an optional embodiment, the determining, based on the second type of telemetry information corresponding to the target data stream in the previous cycle, a sampling rate corresponding to the target data stream in the current cycle includes:
determining the average sending rate of the target data stream in the previous period according to the sampling time stamp in the second type of telemetering information corresponding to the target data stream in the previous period;
and determining the sampling rate corresponding to the target data stream in the period according to the average sending rate and the target sampling interval corresponding to the network to be tested, wherein the target sampling interval is determined based on the channel bandwidth between the switching devices.
In an optional implementation manner, the determining, based on the in-band network telemetry policy, a target data stream, and notifying the switching device to perform data stream telemetry on the target data stream, where the target data stream is a data stream that needs to be telemetered in each data stream, includes:
based on the in-band network telemetry strategy determined in the period, informing all switching equipment in the network to be tested of the target data stream required to be telemetered in the period so that the switching equipment carries out data stream telemetry on the target data stream required to be telemetered in the period; or
And notifying corresponding switching equipment to carry out data flow telemetry on a target data flow corresponding to the in-band network telemetry sub-strategy based on the in-band network telemetry sub-strategy in the in-band network telemetry strategy determined in the period, wherein the corresponding switching equipment is the switching equipment through which the target data flow corresponding to the in-band network telemetry sub-strategy flows.
In an optional implementation manner, the notifying, based on the in-band network telemetry sub-policy in the in-band network telemetry policies determined in this period, a corresponding switching device to perform data stream telemetry on a target data stream corresponding to the in-band network telemetry sub-policy includes:
each time an in-band network telemetry sub-strategy is determined, informing the corresponding switching equipment to carry out data flow telemetry on a target data flow corresponding to the in-band network telemetry sub-strategy; or
And after determining that all target data streams needing telemetry in the period correspond to the in-band network telemetry sub-strategies, informing the corresponding switching equipment of each in-band network telemetry sub-strategy to carry out data stream telemetry on the target data streams corresponding to the in-band network telemetry sub-strategies.
In an alternative embodiment, the determining the in-band network telemetry policy based on the received first type of telemetry information for each data stream within a set time period includes:
taking the data stream which is in data transmission as a candidate data stream according to the transmission state information corresponding to each data stream in the first type of telemetering information;
and screening target data streams needing telemetry from the candidate data streams according to the forwarding paths of the candidate data streams.
In an optional embodiment, the screening out a target data stream requiring telemetry from each of the candidate data streams according to the forwarding path of each of the candidate data streams includes:
taking all the candidate data streams as a group of candidate data stream groups, and screening target data streams needing telemetry from all the candidate data streams according to forwarding paths of all the candidate data streams in the candidate data stream groups; or
Determining the priority corresponding to each candidate data stream according to the forwarding path of each candidate data stream; grouping each candidate data stream according to the corresponding priority of each candidate data stream; the following processes are performed in parallel for at least two groups: and screening target data streams needing telemetry from the candidate data streams according to the forwarding paths of the candidate data streams in the candidate data stream group.
In an optional implementation manner, the screening out a target data stream requiring telemetry from each candidate data stream according to a forwarding path of each candidate data stream in the candidate data stream group includes:
selecting the candidate data stream flowing through the first type of switching equipment most from the candidate data streams as a target data stream needing telemetry according to the forwarding path of each candidate data stream, wherein the first type of switching equipment is other switching equipment except the second type of switching equipment in the network to be tested; the second type of switching equipment is determined switching equipment through which a target data stream needing telemetry flows;
and if the ending condition is not met, continuing to select the candidate data stream which flows through the first type of switching equipment most from the unselected candidate data streams as the target data stream needing telemetry until the ending condition is met.
In an alternative embodiment, the end condition comprises one of the following:
all the switching equipment in the network to be tested is second-class switching equipment;
the number of selections reaches an upper limit.
In an optional implementation manner, the determining, according to a forwarding path of each candidate data flow, a priority corresponding to each candidate data flow includes:
for each candidate data stream, performing the following operations:
determining switching equipment through which the candidate data stream flows according to the forwarding path of the candidate data stream;
allocating a priority to the candidate data stream based on an idle time of the switching device through which the candidate data stream flows and a corresponding time weighting factor, wherein the longer the idle time, the larger the corresponding time weighting factor, the idle time is a time between an end time of the last other data stream flowing through the switching device and a start time of the current candidate data stream flowing through the switching device.
According to a second aspect of embodiments of the present disclosure, there is provided another in-band network telemetry method, comprising:
reporting first type telemetering information of data streams flowing through the controller within a set time length to a controller, so that the controller determines an in-band network telemetering strategy according to the received first type telemetering information of each data stream reported by a switching device in a network to be tested, wherein the first type telemetering information of each data stream is used for representing the transmission state of the corresponding data stream;
after receiving a notification sent by the controller based on the in-band network telemetry strategy, determining a target data stream needing telemetry in each data stream, and reporting second type of telemetry information aiming at the target data stream to the controller, so that the controller carries out telemetry analysis through the first type of telemetry information and the second type of telemetry information of the target data stream.
In an optional implementation manner, the first type of telemetry information is periodically reported to the controller, and the first type of telemetry information of the data stream flowing through the first type of telemetry information in the set time period is the first type of telemetry information of the data stream flowing through the first type of telemetry information in one period; and/or
The second type of telemetry information is generated from sampled data of the target data stream.
In an optional embodiment, after receiving the notification sent by the controller based on the in-band network telemetry policy, determining a target data stream requiring telemetry includes:
and after receiving a notification sent by the controller based on the in-band network telemetry strategy in the period, determining a target data stream required to be telemetered in the period and the sampling rate of the target data stream.
In an optional embodiment, the reporting the second type of telemetry information for the target data stream to the controller includes:
for each target data stream flowing through the data stream, respectively executing the following operations:
sampling the target data stream according to a sampling rate corresponding to the target data stream to obtain sampling data aiming at the target data stream;
and reporting the second type of telemetering information generated according to the sampling data to the controller.
According to a third aspect of embodiments of the present disclosure, there is provided an in-band network telemetry device, comprising:
the strategy determination unit is configured to execute first type of telemetering information of each data stream in a received set time length and determine an in-band network telemetering strategy, wherein the first type of telemetering information is reported by switching equipment in a network to be tested, and the first type of telemetering information of each data stream is used for representing the transmission state of the corresponding data stream;
a notification unit configured to determine a target data stream based on the in-band network telemetry policy, and notify the switching device to perform data stream telemetry on the target data stream, where the target data stream is a data stream that needs to be telemetered in each data stream;
and the analysis unit is configured to execute receiving of second type of telemetry information of the target data stream reported by the switching device, and perform telemetry analysis through the first type of telemetry information and the second type of telemetry information of the target data stream.
In an optional embodiment, the first type of telemetry information is reported periodically by the switching device, and the first type of telemetry information of each data stream in the set time duration is the first type of telemetry information of each data stream in a period; and/or
The second type of telemetry information is generated from sampled data of the target data stream.
In an optional embodiment, the in-band network telemetry strategy comprises identification information of a data stream to be telemetered and a sampling rate for sampling the data stream in the telemetry process; the policy determination unit is specifically configured to perform:
determining a target data stream needing telemetry in the period based on the first type of telemetry information of each data stream received in the period;
and taking the identification information of the target data stream as the identification information in the in-band network telemetry strategy of the period, and taking the sampling rate of the target data stream as the sampling rate in the in-band network telemetry strategy of the period.
In an optional embodiment, the policy determination unit is further configured to perform:
determining a sampling rate of the target data stream by:
if the target data stream is not telemetered in the previous period, taking a preset initial sampling rate as a sampling rate corresponding to the target data stream in the current period;
and if the target data stream is telemetered in the previous period, determining the sampling rate corresponding to the target data stream in the current period based on the second type of telemetering information corresponding to the target data stream in the previous period.
In an optional implementation manner, the policy determining unit is specifically configured to perform:
determining the average sending rate of the target data stream in the previous period according to the sampling time stamp in the second type of telemetering information corresponding to the target data stream in the previous period;
and determining the sampling rate corresponding to the target data stream in the period according to the average sending rate and the target sampling interval corresponding to the network to be tested, wherein the target sampling interval is determined based on the channel bandwidth between the switching devices.
In an alternative embodiment, the notification unit is specifically configured to perform:
based on the in-band network telemetry strategy determined in the period, informing all switching equipment in the network to be tested of the target data stream required to be telemetered in the period so that the switching equipment carries out data stream telemetry on the target data stream required to be telemetered in the period; or
And notifying corresponding switching equipment to carry out data flow telemetry on a target data flow corresponding to the in-band network telemetry sub-strategy based on the in-band network telemetry sub-strategy in the in-band network telemetry strategy determined in the period, wherein the corresponding switching equipment is the switching equipment through which the target data flow corresponding to the in-band network telemetry sub-strategy flows.
In an alternative embodiment, the notification unit is specifically configured to perform:
each time an in-band network telemetry sub-strategy is determined, informing the corresponding switching equipment to carry out data flow telemetry on a target data flow corresponding to the in-band network telemetry sub-strategy; or
And after determining that all target data streams needing telemetry in the period correspond to the in-band network telemetry sub-strategies, informing the corresponding switching equipment of each in-band network telemetry sub-strategy to carry out data stream telemetry on the target data streams corresponding to the in-band network telemetry sub-strategies.
In an optional implementation manner, the policy determining unit is specifically configured to perform:
taking the data stream which is in data transmission as a candidate data stream according to the transmission state information corresponding to each data stream in the first type of telemetering information;
and screening target data streams needing telemetry from the candidate data streams according to the forwarding paths of the candidate data streams.
In an optional implementation manner, the policy determining unit is specifically configured to perform:
taking all the candidate data streams as a group of candidate data stream groups, and screening target data streams needing telemetry from all the candidate data streams according to forwarding paths of all the candidate data streams in the candidate data stream groups; or
Determining the priority corresponding to each candidate data stream according to the forwarding path of each candidate data stream; grouping each candidate data stream according to the corresponding priority of each candidate data stream; the following processes are performed in parallel for at least two groups: and screening target data streams needing telemetry from the candidate data streams according to the forwarding paths of the candidate data streams in the candidate data stream group.
In an optional implementation manner, the policy determining unit is specifically configured to perform:
selecting the candidate data stream flowing through the first type of switching equipment most from the candidate data streams as a target data stream needing telemetry according to the forwarding path of each candidate data stream, wherein the first type of switching equipment is other switching equipment except the second type of switching equipment in the network to be tested; the second type of switching equipment is determined switching equipment through which a target data stream needing telemetry flows;
and if the ending condition is not met, continuing to select the candidate data stream which flows through the first type of switching equipment most from the unselected candidate data streams as the target data stream needing telemetry until the ending condition is met.
In an alternative embodiment, the end condition comprises one of the following:
all the switching equipment in the network to be tested is second-class switching equipment;
the number of selections reaches an upper limit.
In an optional implementation manner, the policy determining unit is specifically configured to perform:
for each candidate data stream, performing the following operations:
determining switching equipment through which the candidate data stream flows according to the forwarding path of the candidate data stream;
allocating a priority to the candidate data stream based on an idle time of the switching device through which the candidate data stream flows and a corresponding time weighting factor, wherein the longer the idle time, the larger the corresponding time weighting factor, the idle time is a time between an end time of the last other data stream flowing through the switching device and a start time of the current candidate data stream flowing through the switching device.
According to a fourth aspect of embodiments of the present disclosure, there is provided an in-band network telemetry device, comprising:
the first reporting unit is configured to perform reporting of first-class telemetering information of data streams flowing through the first reporting unit within a set time length to a controller, so that the controller determines an in-band network telemetering strategy according to the received first-class telemetering information of each data stream reported by switching equipment in a network to be tested, wherein the first-class telemetering information of each data stream is used for representing a transmission state of the corresponding data stream;
and the second reporting unit is configured to determine a target data stream required to be telemetered in each data stream after receiving a notification sent by the controller based on the in-band network telemetry policy, and report second type telemetry information for the target data stream to the controller, so that the controller performs telemetry analysis through the first type telemetry information and the second type telemetry information of the target data stream.
In an optional implementation manner, the first type of telemetry information is periodically reported to the controller, and the first type of telemetry information of the data stream flowing through the first type of telemetry information in the set time period is the first type of telemetry information of the data stream flowing through the first type of telemetry information in one period; and/or
The second type of telemetry information is generated from sampled data of the target data stream.
In an optional embodiment, the second reporting unit is specifically configured to perform:
and after receiving a notification sent by the controller based on the in-band network telemetry strategy in the period, determining a target data stream required to be telemetered in the period and the sampling rate of the target data stream.
In an optional embodiment, the second reporting unit is specifically configured to perform:
for each target data stream flowing through the data stream, respectively executing the following operations:
sampling the target data stream according to a sampling rate corresponding to the target data stream to obtain sampling data aiming at the target data stream;
and reporting the second type of telemetering information generated according to the sampling data to the controller.
According to a fifth aspect of embodiments of the present disclosure, there is provided an electronic apparatus including:
a processor;
a memory for storing the processor-executable instructions;
wherein the processor is configured to execute the instructions to implement the in-band network telemetry method of any one of the first aspect or the second aspect of the embodiments of the present disclosure.
According to a sixth aspect of embodiments of the present disclosure, there is provided a non-transitory readable storage medium having instructions that, when executed by a processor of an electronic device, enable the electronic device to perform the in-band network telemetry method of any one of the first aspect or the second aspect of the embodiments of the present disclosure.
According to a seventh aspect of embodiments of the present disclosure, there is provided a computer program product, which, when run on an electronic device, causes the electronic device to perform a method that implements any of the above-mentioned first aspect and first aspect of embodiments of the present disclosure or any of the second aspect and second aspect.
The technical scheme provided by the embodiment of the disclosure at least brings the following beneficial effects:
as the disclosed embodiments utilize a controller as a global INT policy coordinator. The switching equipment reports first type telemetering information of each data stream in a network to be tested within a set time length to the controller, the first type telemetering information represents the transmission state of the data stream, so that the transmission of the data stream of the whole network to be tested can be comprehensively analyzed based on the first type telemetering information, a proper in-band network telemetering strategy is formulated, the in-band network telemetering strategy is informed to the switching equipment, the switching equipment telemeters a target data stream to be telemetered to generate second type telemetering information, the switching equipment feeds the second type telemetering information back to the controller, and the controller carries out telemetering analysis based on the first type telemetering information and the second type telemetering information to obtain the network state of the network to be tested. Based on the reflection mode, the method for remotely measuring the in-band network in the whole network range of the extensible data center is provided, the process is simple, only the target data stream is remotely measured, the data volume needing to be processed is reduced, and the resource consumption can be effectively reduced.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the disclosure and are not to be construed as limiting the disclosure.
FIG. 1 is a flow chart illustrating a first in-band network telemetry method according to an exemplary embodiment.
FIG. 2 is an overall architecture diagram of an in-band network telemetry system shown in accordance with an exemplary embodiment.
FIG. 3 is a flowchart illustrating operation of an in-band network telemetry system according to an exemplary embodiment.
Fig. 4 is a schematic diagram of a data/control plane timeline of a naive streaming algorithm, shown in accordance with an exemplary embodiment.
FIG. 5 is a diagram illustrating a multithreading acceleration structure for an optimized flow selection algorithm in accordance with an exemplary embodiment.
Fig. 6 is a diagram illustrating an example of an adaptive sampling rate in accordance with an example embodiment.
FIG. 7 is a flowchart illustrating a second in-band network telemetry method, according to an exemplary embodiment.
FIG. 8 is an interaction timing flow diagram illustrating a method of in-band network telemetry, according to an example embodiment.
FIG. 9 is a block diagram illustrating an in-band network telemetry device, according to an exemplary embodiment.
FIG. 10 is a block diagram illustrating another in-band network telemetry device, according to an exemplary embodiment.
FIG. 11 is a block diagram illustrating an electronic device in accordance with an example embodiment.
Detailed Description
In order to make the technical solutions of the present disclosure better understood by those of ordinary skill in the art, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the accompanying drawings.
It should be noted that the terms "first," "second," and the like in the description and claims of the present disclosure and in the above-described drawings are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the disclosure described herein are capable of operation in sequences other than those illustrated or otherwise described herein. The implementations described in the exemplary embodiments below are not intended to represent all implementations consistent with the present disclosure. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present disclosure, as detailed in the appended claims.
Some of the words that appear in the text are explained below:
1. the term "and/or" in the embodiments of the present disclosure describes an association relationship of associated objects, and means that there may be three relationships, for example, a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship.
2. The term "electronic device" in the embodiments of the present disclosure may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, or the like.
3. The term "telemetry information" in the embodiments of the present disclosure refers to information obtained by in-band network telemetry of data streams in a network by a switching device, and can be classified into a first type of telemetry information and a second type of telemetry information. The first type of telemetry information refers to information for characterizing a transmission state of a data stream, such as SYN (synchronization), FIN (finish), RST (Reset) packet, and the like; the second type of telemetry information is generated from sampled data of the target data stream, including, for example, sampled data packets and corresponding sampled time stamps.
4. The term "linear speed" in the embodiments of the present disclosure refers to a standard of switching forwarding capability of network devices, and is not generally referred to as linear speed and angular speed. Line speed refers to a standard for the switching and forwarding capabilities of network devices, and is the maximum amount of data that can be processed between a switch interface processor or interface card and a data bus.
5. The term "sampling rate", also referred to as sampling frequency, or sampling speed, in the embodiments of the present disclosure, defines the number of samples extracted from a continuous signal per second and constituting a discrete signal, which is expressed in hertz (Hz). The inverse of the sampling frequency is the sampling period or sampling time, which is the time interval between samples. Colloquially speaking, the sampling frequency refers to how many signal samples per second a computer takes.
6. The term "control plane" in the embodiments of the present disclosure is used to control and manage the operation of all network protocols. The control plane provides the router/switch with accurate knowledge of network devices, connection links and interaction protocols in the whole network environment through the network protocol, and timely adjustments are made when the network conditions change to maintain the normal operation of the network. The control plane provides various network information and forwarding query table entries necessary for data plane data processing before forwarding. The switch data plane is used to process and forward various types of data on different ports of the switch.
7. The term "NP-hard" in the examples of this disclosure "Problem(s)The second but not necessarily the first one of the NPC problem definitions is satisfied (i.e., theThat is, the NP-Hard problem is broader than the NPC problem, and the NP-Hard problem is not limited to NP), i.e., all NP problems can be reduced to it, but he is not necessarily a NP problem.
8. The term "heuristic algorithm" in the embodiments of the present disclosure is proposed with respect to an optimized stream selection algorithm. An optimization algorithm for a problem finds the optimal solution for each instance of the problem. The heuristic algorithm may be defined as follows: an algorithm based on an intuitive or empirical construct gives, at an acceptable cost (in terms of computation time and space), a feasible solution for each instance of the combinatorial optimization problem to be solved, the degree of deviation of which from the optimal solution is generally unpredictable.
9. The term greedy algorithm in the embodiments of the present disclosure means that when solving a problem, the choice that seems best at present is always made. That is, instead of considering the global optimum, he only makes a locally optimal solution in some sense. The greedy algorithm does not yield an overall optimal solution for all problems, but it can yield an overall optimal solution or an approximate solution to an overall optimal solution for a wide range of problems.
The following briefly introduces the design ideas of the embodiments of the present disclosure:
conventional in-band network telemetry can be divided into active and passive probing, depending on the measurement mode.
The active probing is to actively send a probe data packet to the network, and analyze the network behavior according to the characteristic change of the probe caused by the network influence. The active detection has the advantages of flexible use, low performance overhead and fine diagnosis granularity; the method has the defects that the detection limitation is large, only the current fault can be detected, the fault backtracking cannot be carried out, and a detection identification point also needs to be arranged on a data plane. Passive probing is the capturing of data packets flowing through measurement points to measure network state, traffic characteristics, and performance parameters. The passive detection has the advantages that the network can be monitored in real time, and the forwarding of the current network flow is not influenced; the method has the disadvantages of high performance overhead, and the problems of large error, coarse granularity and the like in the passive detection technology based on the flow.
In-band network telemetry is a hybrid measurement method proposed on this basis, aiming at collecting and reporting network status (e.g. queue length, link utilization, queue latency, etc.) through the data plane without the involvement of the switch CPU.
An extensible passive INT system requires a mechanism to support INT policy orchestration across a data center network. Although excellent performance can be achieved with P4(Programming Protocol-independent Packet Processors) switch-customized telemetry logic, it cannot be deployed for the following reasons. In the same data center, the switch is a wide variety of brands and models, most of which only support fixed INT functionality (non-programmable), so it is impractical to deploy additional data plane logic. Secondly, even if the P4 switch is widely deployed, due to its limited computing power and the local view characteristics of the switch, the INT policy for arranging the entire network range of the data center on the data plane is complex, and resource consumption is easily caused.
In order to solve the above problems, an embodiment of the present disclosure provides a reflective in-band network telemetry method, which uses a controller as a global INT policy coordinator and performs INT in a reflective manner. The method for in-band network telemetry in the whole network range of the extensible data center can be realized on a server side, only needs a data plane to support a standard INT function, can be easily deployed on commercial exchange equipment, and is simpler and more convenient in realization process.
The application scenario described in the embodiment of the present disclosure is for more clearly illustrating the technical solution of the embodiment of the present disclosure, and does not form a limitation on the technical solution provided in the embodiment of the present disclosure, and as a person having ordinary skill in the art knows, with the occurrence of a new application scenario, the technical solution provided in the embodiment of the present disclosure is also applicable to similar technical problems. Wherein, in the description of the present disclosure, unless otherwise indicated, "plurality" means.
Referring to fig. 1, a flowchart illustrating a method for in-band network telemetry according to an exemplary embodiment, applied to a controller, is shown in fig. 1, including the following steps.
In step S11, an in-band network telemetry policy is determined based on the received first type of telemetry information of each data stream within a set time period, where the first type of telemetry information is reported by a switching device in a network to be tested, and the first type of telemetry information of each data stream is used to characterize a transmission state of the corresponding data stream;
the first type of telemetry information may include transmission status information for characterizing a transmission status of a corresponding data stream, and in the embodiment of the present disclosure, the transmission status information includes, but is not limited to, one or more of SYN, FIN, and RST packets. Specifically, the SYN packet is used to indicate the beginning of the data stream, the FIN is used to indicate the end of the data stream, and the RST packet is used to indicate the retransmission of the data stream.
In step S12, determining a target data stream based on the in-band network telemetry policy, and notifying the switching device to perform data stream telemetry on the target data stream, where the target data stream is a data stream that needs to be telemetered in each data stream;
in step S13, the second type of telemetry information of the target data stream reported by the switch device is received, and telemetry analysis is performed according to the first type of telemetry information and the second type of telemetry information of the target data stream.
In the disclosed embodiments, in-band network telemetry is a framework for the network data plane to collect and report network status without the need for network control plane intervention. In the in-band network telemetry architecture model, switching devices generate, forward, and process data packets carrying telemetry instructions. These telemetry commands tell network devices with network telemetry capabilities what network state information should be collected and written to as the telemetry data packets pass through the switching device.
That is, in the data stream forwarding process, the network state acquisition can be completed by sequentially inserting metadata into the data packets through the path intermediate switching device, and the INT data is generated. Furthermore, the controller mainly analyzes the network state of the network to be tested based on the metadata in the INT data packet. These INT packets may be SYN packets, FIN packets, RST packets, sample packets between SYN packets and FIN packets, and so on. Through the scheme, the controller is used as a global INT strategy coordinator. The switching equipment reports first type telemetering information of each data stream in the network to be tested within a set time length, the first type telemetering information represents the transmission state of the corresponding data stream, so that the transmission of the data stream of the whole network to be tested can be comprehensively analyzed based on the first type telemetering information, a proper in-band network telemetering strategy is formulated, the in-band network telemetering strategy is informed to the switching equipment, the switching equipment carries out telemetering on a target data stream needing telemetering, second type telemetering information is generated, the switching equipment feeds the second type telemetering information back to the controller, and the controller carries out telemetering analysis based on the first type telemetering information and the second type telemetering information to obtain the network state of the network to be tested. Based on the reflection mode, the method for remotely measuring the in-band network in the whole network range of the extensible data center is provided, the process is simple, only the target data stream is remotely measured, the data volume needing to be processed is reduced, and the resource consumption can be effectively reduced.
In an optional implementation manner, the first type of telemetry information is reported periodically by the switching device, and the first type of telemetry information of each data stream in a set time length is the first type of telemetry information of each data stream in a period; and/or the second type of telemetry information is generated from sampled data of the target data stream. The second type of telemetry information specifically refers to sampling data and a sampling time stamp, and in addition to performing telemetry analysis based on the first type of telemetry information and the second type of telemetry information, the previous in-band network telemetry policy may be updated based on a previous telemetry result to generate a new in-band network telemetry policy, which will be described in detail below.
Thus, the controller may determine the in-band network telemetry policy for the cycle based on the first type of telemetry information received for each data stream for the cycle; based on the in-band network telemetry strategy of the period, informing the switching equipment to perform data stream telemetry on the target data stream required to be telemetered in the period; and receiving second type of telemetering information of the target data stream needing telemetering in the period, which is reported by the switching equipment, and carrying out telemetering analysis through the first type of telemetering information and the second type of telemetering information of the target data stream.
In the above embodiment, a periodic idea is proposed, and INT is performed in a reflective manner, in which an in-band network telemetry policy can be adjusted in real time according to a previous telemetry result, so as to implement dynamic update of the in-band network telemetry policy.
In addition, it is considered that if INT is done for each data stream, a huge amount of data will occupy bandwidth, putting the remote collector overwhelming. Also, the inventors observed that many data streams share the same link and buffer, which means that there is a large redundancy of INT data between data streams. Furthermore, for the same data stream, the inventors have observed that INT data that is too close in time, contains too much jitter and noise. Thus, based on the above observations, a two-stage strategy is proposed in embodiments of the present disclosure to reduce redundant INT data while providing sufficiently fine-grained telemetry information. Namely: (1) minimizing INT path overlap between streams based on a stream selection policy; (2) the INT packets within the stream are minimized based on a sampling rate adaptation strategy.
Accordingly, the in-band network telemetry policy in embodiments of the present disclosure may contain two parts: one part is identification information of target data streams needing telemetry, and the target data streams are obtained based on a stream selection strategy, and the other part is the sampling rate of each target data stream, namely the sampling rate adaptive strategy. Of course, the in-band network telemetry policy in the embodiments of the present disclosure may also only include the identification information, and for the target data stream, a fixed sampling rate is used for sampling.
In the disclosed embodiment, the data flow selection and the design of the data packet sampling must be based on the full network view of the active traffic, in particular the following information: when a flow starts, whether a flow still exists, which forwarding path the flow has traversed. In order to detect the forwarding path of a data stream and the start/end of the data stream in real time, in the embodiment of the present disclosure, only Transmission Control Protocol (TCP) streams occupying a majority (more than 99%) of a data center network are monitored, User Datagram Protocol (UDP) streams are not monitored, INT is performed on each SYN/FIN/RST packet of the TCP streams, and an ID (identification) of a switch device along the forwarding path is collected. Of course, the UDP stream may also be monitored in the actual processing process, and the specific implementation manner is similar to that of the TCP stream, which is not limited herein.
In an alternative embodiment, the in-band network telemetry policy may be determined by:
determining target data streams needing telemetry in the period based on the first type of telemetry information of each data stream received in the period; and taking the identification information of the target data stream as the identification information in the in-band network telemetry strategy of the period, and taking the sampling rate of the target data stream as the sampling rate in the in-band network telemetry strategy of the period. The first type of telemetry information is used for representing the transmission state of a corresponding data stream, and can be used for reflecting information such as when the stream starts, whether the stream still exists, which forwarding path the stream passes through, and the like.
In the above embodiments, screening the target data streams based on the first type of telemetry information minimizes INT path overlap between streams, reducing telemetry data as much as possible.
Specifically, as shown in fig. 2, a controller of the control plane automatically interacts with the data plane in a reflection manner, configures a node supporting INT through a standard flow table rule, and updates an in-band network telemetry policy in real time according to a network condition and previously uploaded INT data on the basis of not interrupting data flow. It should be noted that although the control plane is in the reflective loop, it is only used to adjust the INT policy, and INT is still performed by the data plane line speed.
In the control plane, the controller in the embodiments of the present disclosure includes three components: the device comprises a flow detection module, a flow screening module and a sampling rate calculation module. The flow detection module is used for analyzing the first type of telemetering information, and judging when the flow starts, whether the flow still exists, which forwarding path the flow passes through, and the like. The flow screening module is used for screening out target data flows needing to be telemetered in the period; the sampling rate calculation module is used for calculating the sampling rate of each target data stream. In addition, the data acquisition module is used for receiving the telemetering information reported by the switching equipment.
After the controller formulates the INT policy based on the above information of the switching device, the switching device of the data plane may be notified of the target data streams (i.e., the selected streams) that need to be telemetered in this period and the sampling rates of the target data streams in a manner of a stream table rule. The flow table rule is a communication method between the control plane controller and the data plane switch in the embodiment of the present disclosure.
The data plane switching equipment reports the first type of telemetering information of the data flow flowing through the data plane switching equipment to the controller periodically. After receiving a notification sent by the controller based on the in-band network telemetry strategy of the period, determining a target data stream required to be telemetered in the period, and reporting second type telemetry information generated by sampling data of the target data stream required to be telemetered in the period to the controller to form INT reflection.
The switching device specifically refers to a switch or a router, etc. As shown in FIG. 2, the switching devices are switches, S respectively1,S2,S3,S4. After the stream reaches the network, the stream is forwarded through the switching equipment, in the forwarding process, metadata needing to be collected is written into a data packet based on a telemetering instruction to obtain INT data (packet), and finally the INT data (packet) leaves the network and is reported to the control plane controller.
Fig. 3 is a schematic diagram of a workflow of an in-band network telemetry system according to an embodiment of the present disclosure. Reflective INT is performed in embodiments of the present disclosure, comprising the steps of: (1) and the data plane performs INT processing on the data stream and sends INT data to the controller. (2) The controller calculates the real-time INT policy (i.e., the selected stream and sample rate) from the INT data. (3) The new INT policy is compared to the old INT policy, a different INT policy set is calculated, and flow table rules are installed/modified/deleted. (4) And repeating the steps.
Specifically, the data plane switching device is configured to perform INT processing on all SYN/FIN/RST data packets to obtain SYN data and FIN data (which may generate first type of telemetry information); and sampling the target data stream according to the received sampling rate to obtain sampling data (capable of generating second type telemetry information), wherein the sampling data are collectively called INT data, the INT data are reported to the controller by the switching equipment, and the INT strategy is updated by the controller based on the INT data.
The data acquisition module is configured to collect second type of telemetry information (such as sampling data in fig. 3) reported by the data plane switching device, and forward the second type of telemetry information to the stream detection module, and the stream detection module is configured to analyze the second type of telemetry information sent by the data acquisition module and the first type of telemetry information reported by the data plane switching device. The flow detection module can acquire information such as a flow forwarding path, flow starting time, flow ending time and the like by analyzing the first type of telemetering information and informs the flow screening module, and the flow screening module screens a target data flow needing telemetering measurement in the period based on the information to serve as a selected flow; in addition, the flow detection module may determine a sampling timestamp of the sampled data by analyzing the second type of telemetry information and notify the sampling rate calculation module of such information, which may calculate a sampling rate of the data flow based on such information. And finally, the identification information of the target data stream and the sampling rate of the target data stream are used as an INT strategy of the period and are issued to the data plane.
In the embodiment of the present disclosure, installing the flow table rule may be for a newly added target data flow in this period; modifying the flow table rule may mean that the sampling rate of the target data flow changes compared to the previous cycle in this cycle; deleting a flow table rule may refer to that a certain target data flow is no longer telemetered in this period compared to the previous period, and so on.
The following describes the flow selection policy in the embodiment of the present disclosure in detail, and the basic idea is as follows: taking the data stream which is in data transmission as a candidate data stream according to the transmission state information corresponding to each data stream in the first type of telemetering information; and screening target data streams needing telemetry from the candidate data streams according to the forwarding paths of the candidate data streams.
In the above embodiment, the data stream being transmitted is a live stream, and the data stream having finished being transmitted does not need to be telemetered any more, and the corresponding sampling rate is calculated, so in the embodiment of the present disclosure, the target data stream needing telemetry is screened from the candidate data streams. In addition, in the embodiment of the present disclosure, the candidate data streams that can be used as the target data streams are screened out mainly according to the forwarding paths of the candidate data streams, so that the situation that the screened out target data streams share the same link and buffer area can be effectively reduced.
Specifically, the embodiments of the present disclosure provide the following two methods for screening a target data stream from candidate data streams:
the method comprises the steps that in the first screening mode, all candidate data streams are used as a group of candidate data stream groups, and target data streams needing remote measurement are screened from the candidate data streams according to forwarding paths of the candidate data streams in the candidate data stream groups;
in this way, rather than grouping, all candidate data streams are regarded as a whole, and target data streams to be telemetered are screened out one by one from the candidate data streams. Therefore, the INT strategy can be uniformly issued after all target data streams are screened out.
Technically speaking, the disclosed embodiments divide time into a series of time slots. Setting the set duration to one slot, then in one slot, a subset of surviving streams is selected for INT, which covers all non-idle links with the least path overlap possible. Where a link refers to a physical connection between network nodes. In addition, a theoretically reasonable sampling rate is also calculated for each selected stream in the disclosed embodiments.
In the disclosed embodiment, the problem of finding the minimum set of streams in one slot is modeled as a set coverage problem, and therefore, finding the optimal minimum set of streams is NP-hard. In order to achieve fast calculation, a heuristic algorithm should be used. Specifically, a rapid greedy algorithm is adopted to complete the preliminary flow selection design, and the implementation process is as follows: selecting the candidate data stream passing through the uncovered link most from the surviving stream set (including each candidate data stream) and adding the candidate data stream into the selected stream set; the above steps are repeated until all links are covered. The timelines of the control plane and the data plane are shown in fig. 4.
In the embodiment of the present disclosure, the links are generally physically connected directly, and since a network topology is considered in the embodiment of the present disclosure, the physical connection between the nodes is a link, for example, a network line which may be 100 g. Although the forwarding path and the link are not in the same category, the switching device through which the data stream flows obtained by the forwarding path based on the data stream can indirectly reflect the link covered by the data stream.
Therefore, for a candidate data stream group, when screening target data streams needing telemetry according to forwarding paths in the candidate data streams, the main process is as follows:
selecting the candidate data stream flowing through the first type of switching equipment most from the candidate data streams as a target data stream needing telemetry according to the forwarding path of each candidate data stream, wherein the first type of switching equipment is other switching equipment except the second type of switching equipment in the network to be tested; the second type of switching equipment is determined switching equipment through which a target data stream needing telemetry flows; if the ending condition is not met, the candidate data stream which flows through the first type of switching equipment most is continuously selected from the unselected candidate data streams as the target data stream needing telemetry, namely the process is repeated until the ending condition is met.
Wherein the end condition comprises one of:
all the switching equipment in the network to be tested is the second type of switching equipment, namely the switching equipment in the network to be tested is fully covered; the number of times of selection reaches the upper limit value, that is, a certain number of target data streams are selected, or the number of the second type of switching devices reaches a certain number.
It should be noted that the above-mentioned end conditions are only examples, and any related end conditions are applicable to the embodiments of the present disclosure, and are not specifically limited herein.
In the above embodiment, all candidate data streams in a period are taken as a whole, a minimum stream set can be obtained by screening, and an optimal target data stream set or an approximately optimal target data stream set is obtained by screening from the whole candidate data streams, so that the telemetry effect is improved.
Fig. 4 is a schematic diagram of a data/control plane timeline of a naive streaming algorithm based on a screening mode in an embodiment of the present disclosure.
Wherein the control plane: (A) and the controller collects the flow information of the SYN/FIN/RST message to detect the flow. (B) Representing the strategy calculation part, the controller calculates the minimum flow set F by using a naive flow selection algorithmmin. (C) Representing a flow table calculation and issue part, a controller calculates FminAnd install it to the data plane until the table rule takes effect. (D) An idle portion is indicated, and to prevent too frequent updates of the policy (which could lead to excessive table rules and network congestion), the controller will idle for a short period of time before starting the next round of computation.
A data plane: assume that the switch port has two flows in this slot. The rectangles with diagonal lines represent packets of one data stream (referred to as stream 1) and the rectangles with horizontal lines represent packets of another data stream (referred to as stream 2). White packets represent SYN/FIN/RST messages and black packets represent data messages. During (a), the SYN packet of data flow 1 is captured by the control plane. However, since the controller has already begun to calculate the INT policy, the SYN packet of data flow 2 arrives at (B) cycle, and is ignored by the control plane. Then, at the end of the (C) period, the INT policy of data stream 1 is in effect and the controller receives INT data (white part), but data stream 2 is not within the monitoring range (grey part). INT data upload ends with the arrival of FIN packets of data stream 1.
Based on the first screening mode, the INT strategy can be calculated when the stream arrives/ends, and the mode can obtain the optimal real-time calculation result. However, in a data center network, the duration of a short flow is short (less than 100 milliseconds), while the sending rate of a long flow is constantly changing due to TCP CWND (congestion window) adjustment. If the INT policy is updated very slowly, not only the correct sampling rate cannot be calculated for the long stream, but also the short stream is missed. Moreover, considering that a data center always has millions of active streams, the number of cores of the controller is limited, and therefore, a thread cannot be set for each data stream to calculate the INT policy. Therefore, the idea of batch processing is proposed in the embodiment of the present disclosure, specifically referring to the second screening method.
Determining the corresponding priority of each candidate data stream according to the forwarding path of each candidate data stream; grouping the candidate data streams according to the corresponding priority of the candidate data streams; the following processes are performed in parallel for at least two groups: and screening target data streams needing telemetry from the candidate data streams according to the forwarding paths of the candidate data streams in the candidate data stream group.
It should be noted that, in a multi-thread parallel processing manner, for each group of candidate data stream groups, stream selection may also be performed based on the first-class switching device and the second-class switching device, specifically, according to a forwarding path of each candidate data stream in the candidate data stream group, the candidate data stream that most passes through the first-class switching device is selected from each candidate data stream as a target data stream that needs to be telemetered; if the ending condition is not met, the candidate data stream which flows through the first type of switching equipment most is continuously selected from the unselected candidate data streams as the target data stream needing telemetry, namely the process is repeated until the ending condition is met.
In this way, based on the idea of batch processing, the candidate data stream is divided into several groups, and the groups can be processed in parallel, so that the screening speed can be improved. Also, multithreading can be utilized to quickly begin computing the INT policy. Once the INT policy of the flow is obtained, the corresponding flow table rule is installed immediately without waiting for the algorithm to end. That is, when each target data stream is screened out, the corresponding sampling rate can be calculated immediately, the corresponding switching device is informed, the capability of capturing the short-life stream is improved, and the first few data packets of the data stream, even the whole short stream, are prevented from being missed.
Specifically, the embodiment of the present disclosure provides a multithreading algorithm to quickly respond to a change in a network state. And setting theta-3 threads to perform INT strategy calculation by utilizing limited theta cores on the controller. Specifically, the θ -3 threads used for INT policy computation are staggered from each other by 1/(θ -3) cycles to uniformly capture new flow information. The remaining three threads are used for flow information collection, flow table computation and installation, and standby policy computation, respectively (to prevent threads from being busy).
Fig. 5 is a schematic view of a multithread acceleration structure of an optimized flow selection algorithm implemented based on a second screening method in the embodiment of the present disclosure. Wherein, A represents the flow information acquisition, B represents the strategy calculation, C represents the flow table calculation and issue, and D represents the idle. In fig. 5, 3B processes are shown for performing policy calculation, each B process processes one candidate data flow, calculates a corresponding sampling rate immediately after selecting the candidate data flow as a target data flow, and installs a flow table rule immediately thereafter. Then, the next candidate data stream is processed, and 3B processes perform parallel computation.
In the optimized stream selection algorithm, F cannot be uniformly installed after the algorithm is finishedminThe flow table rule is installed immediately after the flow is selected, so that the flow table rule can be ensured to be in effect immediately, and the first few data packets (even the whole short flow) which are leaked are avoided. Note that when the heuristic of a thread selects a flow until the end of the algorithm, the algorithm will not be able to proceed from set FminThe flow is excluded, i.e., the "install flow table rule immediately" policy in the embodiments of the present disclosure is secure. However, considering θ -3 threads for parallel policy computation, simply "install flow table rules immediately" may result in multiple threads installing duplicate table rules. To avoid the above, in the embodiments of the present disclosure, a global data structure may also be used to maintain information of the selected flow and check whether the flow table rule is installed before installing the flow table rule, thereby suppressing redundant flow table rules. Furthermore, the "install flow table rules immediately" policy may distribute installation actions, avoiding a short high load due to installing a large number of flow table rules at the same time.
It should be noted that the heuristic algorithm is a trade-off between time complexity and results. However, in the reflective INT problem of embodiments of the present disclosure, both fast calculations and good results are crucial. Thus, in the disclosed embodiments, in order to achieve a good balance between fast computation and good results, the disclosed embodiments do not insist on finding the flow with the best coverage, but only the flow close to the optimal one, thereby speeding up the computation. In addition, considering that in order to cover a link with longer idle time on the premise of fast stream selection, a time weighting factor is also introduced in the embodiment of the present disclosure, and priorities are assigned to the candidate data streams based on the time weighting factor.
In an optional implementation manner, the priority corresponding to each candidate data flow is specifically determined by the following manner, where for each candidate data flow, the following operations are performed:
firstly, determining switching equipment through which a candidate data stream flows according to a forwarding path of the candidate data stream; and further, distributing the priority for the candidate data flow based on the idle time of the switching equipment through which the candidate data flow flows and the corresponding time weighting factor.
The longer the idle duration is, the larger the corresponding time weighting factor is, and finally, for one switching device, the corresponding idle duration is the end time of the last other data stream flowing through the switching device, and the duration between the start time of the current candidate data stream flowing through the switching device can be obtained based on the hop-by-hop timestamp analysis included in the INT data packet. Wherein the other data streams are the data streams other than the candidate data stream.
In the embodiment of the present disclosure, the idle duration of the switch device may indirectly reflect the link idle duration, that is, the link idle duration is introduced into the gating algorithm, so as to cover the link with a longer idle duration as soon as possible. Based on the above embodiment, the order of installing the flow table rules in the calculation cycle can be further controlled, so that some links with longer idle time have higher priority to install the flow table rules. In this way, it can be guaranteed that INT policy updates can catch up to short streams and adapt to long streams that constantly change sending rate.
In addition, embodiments of the present disclosure provide a sample rate adaptation mechanism to achieve a minimum telemetry overhead and a theoretically reasonable telemetry granularity. In an alternative embodiment, the sampling rate of the target data stream is determined by periodically updating the in-band network telemetry policy, and the target data stream to be telemetered may also be different at different periods, for example, a new period may be present and a data stream that has not been present before may be present. Therefore, when calculating the sampling rate of the target data stream, the following two methods can be specifically classified:
and determining a first mode, if the target data stream is not telemetered in the previous period, taking a preset initial sampling rate as a sampling rate corresponding to the target data stream in the current period.
For example, for the target data stream 1, there is no telemetry in the first period, and telemetry is needed in the second period, and when the sampling rate of the target data stream 1 in the second period is calculated, the preset initial sampling rate may be directly used as the sampling rate of the target data stream 1 in the second period.
In addition, for each target data stream requiring telemetry in the first period, the sampling rate of the target data streams in the first period can be set to be a preset initial sampling rate.
And determining a second mode, if the target data stream is telemetered in the previous period, determining the sampling rate corresponding to the target data stream in the current period based on the second type of telemetering information corresponding to the target data stream in the previous period.
For example, if telemetry is performed on the target data stream 2 in the first cycle and telemetry is also required in the second cycle, the target data stream 2 needs to be calculated based on the second type of telemetry information of the target data stream 1 in the first cycle when the sampling rate of the target data stream 2 in the second cycle is calculated.
In the above embodiment, the sampling rate of the target data stream in the period may be updated in a reflective manner based on the telemetry result of the previous period, so that adaptive change of the sampling rate is realized, and the embodiment of the present disclosure may capture a short stream and adapt to a long stream, thereby greatly improving the telemetry performance.
Specifically, when the sampling rate of the target data stream in the present period is calculated based on the second type of telemetry information of the target data stream in the previous period, the specific calculation process is as follows:
determining the average sending rate of the target data stream in the previous period according to the sampling time stamp in the second type of telemetering information corresponding to the target data stream in the previous period; and determining the sampling rate corresponding to the target data stream in the period according to the average sending rate and the target sampling interval corresponding to the network to be tested, wherein the target sampling interval is determined based on the channel bandwidth between the switching devices.
It should be noted that the target sampling interval is specific to the network under test, and the parameter is the same for different target data streams. However, since the transmission rates of different target data streams are different, and the transmission rate of the same target data stream may also change in different periods, the sampling rate calculated based on the above method also changes dynamically.
In the embodiment of the present disclosure, the product of the average sending rate and the target sampling interval corresponding to the network to be tested is used as the sampling rate corresponding to the target data stream in the period, and the calculation formula is as follows:
sampling rate Ni(per N)iOne time sampling is performed on the data stream by each data packet) is determined as follows: n is a radical ofi=ri×Iopt
Wherein r isiIs the sending rate, IoptIs the optimal sampling interval (i.e., the target sampling interval) for the current speed network. In each sample rate calculation cycle, the present disclosure uses the average transmission rate r in the previous cycleiCalculating to obtain a sampling rate Ni
For example, for a given packet transmission rate, queue information may be reflected when the sampling interval reaches a particular value (i.e., the primary information of the queue power spectrum may be retained). But in a data center (a particular network of devices), the sending rate of the data streams may vary widely: on one hand, the sending rates of different data streams are different; on the other hand, due to TCP's congestion window adjustment, the sending rate may also change for the same data flow. If the sampling interval is too close, more efficient information is not provided. Instead, it will record a rapid jitter of the queue, thereby creating a large amount of noise in the telemetry data. Thus, the present disclosure requires dynamic adjustment of the sampling rate to accommodate traffic with different transmission rates and maximize global telemetry information at the same telemetry overhead.
Fig. 6 is a schematic diagram illustrating an example of an adaptive sampling rate according to an embodiment of the disclosure. If all data streams are INT at a fixed sample rate (e.g., 1: 2), as in fig. 6, the INT data for data stream 1 will be sparse and less than optimal and the INT data for data stream 2 will be too dense and carry a lot of queue jitter and noise. Furthermore, this sampling strategy introduces a significant overhead due to the over-sampling of the fast rate data stream. In order to obtain good INT sampling results and less telemetry overhead, embodiments of the present disclosure need to design a dynamic sampling mechanism such that the sampling intervals of different data streams are similar to the optimal sampling interval corresponding to the network. In this example, the data stream 1 sample ratio may be set to 1: 1, and set the data stream 2 sample ratio to 1: 4.
in an alternative embodiment, when the controller notifies the switching device of the in-band network telemetry policy, there are two notification modes:
and in the first notification mode, based on the in-band network telemetry strategy determined in the period, notifying all the switching equipment in the network to be tested of the target data stream required to be telemetered in the period, so that the switching equipment carries out data stream telemetry on the target data stream required to be telemetered in the period.
It is contemplated that not all of the target data streams will flow through any one switching device. For example, the target data streams to be telemetered in this period are: data stream 1, data stream 2, data stream 3, data stream 4, data stream 5.
Different target data streams may flow through different switching devices, and thus, the target data streams flowing through different switching devices are not necessarily the same. For simple operation, the target data stream requiring telemetry in the period can be notified to all the switching devices without detailed distinction, so that for different switching devices, only the target data stream requiring telemetry flowing through the switching device needs to be subjected to data stream telemetry according to the notification.
In the above embodiment, the controller may uniformly issue the same in-band network telemetry sub-policy to the corresponding switching device, so that the policy issuing speed can be effectively increased.
And informing corresponding switching equipment to carry out data stream telemetry on a target data stream corresponding to the in-band network telemetry sub-strategy based on the in-band network telemetry sub-strategy in the in-band network telemetry strategy determined in the period, wherein the corresponding switching equipment is the switching equipment through which the target data stream corresponding to the in-band network telemetry sub-strategy flows.
The target data stream to be telemetered in this period is still: data stream 1, data stream 2, data stream 3, data stream 4, data stream 5 are examples. For the switching device 1, there are a data stream 1 and a data stream 2 flowing through the switching device; thus, the controller, when notifying switching device 1, need only notify switching device 1 to perform data flow telemetry for data flows identified as s-ID1 and s-ID2 based on the in-band network telemetry sub-policy for data flow 1 and data flow 2.
As another example, for the switching device 2, there are a data stream 2 and a data stream 3 flowing through the switching device; thus, the controller, when notifying switching device 2, need only notify switching device 2 to perform data flow telemetry for data flows identified as s-ID2 and s-ID3 based on the in-band network telemetry sub-policies corresponding to data flow 2 and data flow 3.
In the above embodiment, the controller may specifically issue the corresponding in-band network telemetry sub-policy to the corresponding switching device, so as to avoid resource waste.
In an optional implementation manner, regarding the second notification manner, there are two manners as follows in the specific time setting of issuing the in-band network telemetry sub-policy:
the setting mode is as follows: and each time an in-band network telemetry sub-strategy is determined, informing corresponding switching equipment to carry out data flow telemetry on a target data flow corresponding to the in-band network telemetry sub-strategy.
That is, each time an in-band network telemetry sub-policy is determined, the corresponding switching device is immediately notified to perform telemetry on the target data stream.
For example, the in-band network telemetry policy includes 3 in-band network telemetry sub-policies, which correspond to the target data stream 1, the target data stream 2, and the target data stream 3, respectively. However, the three in-band network telemetry sub-strategies are not calculated simultaneously, but have a sequential order, wherein the determination time T1 of the in-band network telemetry sub-strategy 1 corresponding to the target data stream 1 is earlier than the determination time T2 of the in-band network telemetry sub-strategy 2 corresponding to the target data stream 2; t2 is earlier than the determined time T3 of in-band network telemetry sub-policy 3 corresponding to target data stream 3.
The setting mode represents that: informing the switching equipment through which the target data flow 1 needs to flow based on the in-band network telemetry sub-strategy 1 at the time of T1, and carrying out telemetry on the target data flow 1; informing the switching equipment through which the target data stream 2 needs to flow based on the in-band network telemetry sub-strategy 2 at the time of T2, and carrying out telemetry on the target data stream 2; target data stream 3 is telemetered at time T3 based on the in-band network telemetry sub-policy 3 informing the switching devices through which target data stream 3 needs to flow.
For example, as shown in fig. 5, the process B means that after the candidate data stream is selected as the target data stream, the corresponding sampling rate is calculated immediately, and the corresponding in-band network telemetry sub-policy is issued immediately to the switching device corresponding to the data plane.
In the above embodiment, the corresponding in-band network telemetry policy can be issued immediately, the flow table rule is guaranteed to take effect immediately, and the first few data packets (even the whole short flow) of the missing flow are avoided.
The setting mode is two: and after determining that all target data streams needing telemetry in the period correspond to the in-band network telemetry sub-strategies, informing the corresponding switching equipment of each in-band network telemetry sub-strategy to perform data stream telemetry on the target data streams corresponding to the in-band network telemetry sub-strategies.
The method means that after the stream selection algorithm is finished, corresponding switching equipment is simultaneously (possibly with a little time difference) notified, and the target data stream corresponding to the in-band network telemetry sub strategy is telemetered.
Taking several target data flows listed in the first setting manner as an example, this means that after time T3, the switching device through which the target data flow 1 needs to flow is notified based on the in-band network telemetry sub-policy 1 to perform telemetry on the target data flow 1; informing the switching equipment through which the target data stream 2 needs to flow based on the in-band network telemetry sub-strategy 2, and carrying out telemetry on the target data stream 2; and informing the target data flow 3 of the switching equipment through which the target data flow 3 needs to flow based on the in-band network telemetry sub-strategy 3, and carrying out telemetry on the target data flow 3. The notification may be performed at the same time after time T3, or may be performed at different times, and is not particularly limited herein.
In the embodiment, the in-band network telemetry strategy can be simply and efficiently issued, and the strategy is issued uniformly after the flow selection is finished, so that a more appropriate target data flow is selected for telemetry.
Based on the same inventive concept, the embodiment of the disclosure also provides another in-band network telemetry method. Referring to fig. 7, fig. 7 is a flow chart illustrating another in-band network telemetry method, according to an exemplary embodiment, applied to a switching device, as shown in fig. 7, including the following steps.
In step S71, reporting first type of telemetry information of data streams flowing through the controller to the controller within a set time length, so that the controller determines an in-band network telemetry policy according to the received first type of telemetry information of each data stream reported by a switching device in a network to be tested, where the first type of telemetry information of each data stream is used to represent a transmission state of a corresponding data stream;
in step S72, after receiving a notification sent by the controller based on the in-band network telemetry policy, determining a target data stream that needs to be telemetered in each data stream, and reporting the second type of telemetry information for the target data stream to the controller, so that the controller performs telemetry analysis through the first type of telemetry information and the second type of telemetry information of the target data stream.
Through the implementation mode, the switching equipment reports the first type of telemetering information of each data stream in the network to be tested within the set time to the controller, and the first type of telemetering information represents the transmission state of the corresponding data stream, so that the transmission of the data stream of the whole network to be tested can be comprehensively analyzed based on the first type of telemetering information, a proper in-band network telemetering strategy is formulated, the in-band network telemetering strategy is informed to the switching equipment, the switching equipment carries out telemetering on the target data stream to be telemetered, second type of telemetering information is generated, the switching equipment feeds the second type of telemetering information back to the controller, and the controller carries out telemetering analysis based on the first type of telemetering information and the second type of telemetering information, so that the network state of the network to be tested is obtained. Based on the reflection mode, the method for remotely measuring the in-band network in the whole network range of the extensible data center is provided, the process is simple, only the target data stream is remotely measured, the data volume needing to be processed is reduced, and the resource consumption can be effectively reduced.
In an optional implementation manner, the first type of telemetry information is periodically reported to the controller, and the first type of telemetry information of the data stream flowing through the first type of telemetry information is the first type of telemetry information of the data stream flowing through the first type of telemetry information in one period; and/or
The second type of telemetry information is generated from sampled data of the target data stream.
In the above embodiment, by periodically reporting the telemetry information to the controller, it can be ensured that the controller periodically updates the in-band network telemetry policy, and dynamic adjustment of the policy is implemented, so as to better adapt to changes in the network state and improve the telemetry efficiency.
In an alternative embodiment, after receiving a notification sent by the controller based on the in-band network telemetry policy, determining a target data stream requiring telemetry includes:
and after receiving a notification sent by the controller based on the in-band network telemetry strategy in the period, determining a target data stream required to be telemetered in the period and the sampling rate of the target data stream.
That is, in the embodiments of the present disclosure, the in-band network telemetry policy specifically includes two parts: target data streams requiring telemetry, the sampling rate of each target data stream. INT path overlap between streams may be minimized based on a stream selection strategy, and INT packets within a stream may be minimized based on a sample rate adaptation strategy.
In an optional embodiment, reporting the second type of telemetry information for the target data stream to the controller includes:
for each target data stream flowing through the data stream, respectively executing the following operations:
sampling the target data stream according to the sampling rate corresponding to the target data stream to obtain sampling data aiming at the target data stream;
and reporting the second type of telemetering information generated according to the sampling data to the controller.
In the above embodiment, after receiving the notification from the controller, the switching device may determine the identification information of the target data stream flowing through itself and the corresponding sampling rate, so that when generating the second type of telemetry information, the switching device needs to perform the above operation on each target data stream flowing through itself, and performs sampling according to the sampling rate corresponding to each target data stream, thereby implementing dynamic adaptive adjustment of the sampling rate, effectively reducing redundancy of INT sampling packets, and providing telemetry information with sufficiently fine granularity.
FIG. 8 is an interaction timing flow diagram illustrating a method of in-band network telemetry, according to an exemplary embodiment, including the steps of:
s81: the method comprises the steps that a switch periodically reports first-class telemetering information of data streams flowing through the switch to a controller;
s82: the method comprises the steps that a controller periodically receives first type telemetering information of each data stream reported by a switching device in a network to be tested;
s83: the controller determines an in-band network telemetry strategy of the period based on the first type of telemetry information of each data stream received by the period;
s84: the controller informs the switching equipment to carry out data flow remote measurement on a target data flow needing remote measurement in the period based on the in-band network remote measurement strategy in the period;
s85: after receiving a notification sent by the controller based on the in-band network telemetry strategy of the period, the switch determines a target data stream required to be telemetered in the period, and reports second type telemetry information generated by sampling data of the target data stream required to be telemetered in the period to the controller;
s86: and the controller receives second type of telemetering information of the target data stream needing telemetering in the period, which is reported by the switching equipment, and carries out telemetering analysis through the first type of telemetering information and the second type of telemetering information of the target data stream.
Based on the same inventive concept, the present disclosure provides an in-band network telemetry device. FIG. 9 is a block diagram illustrating an in-band network telemetry device 900 according to an exemplary embodiment. Referring to fig. 9, the apparatus includes a policy determination unit 901, a notification unit 902, and an analysis unit 903.
A policy determining unit 901, configured to execute a first type of telemetry information of each data stream within a received set time length, and determine an in-band network telemetry policy, where the first type of telemetry information is reported by a switching device in a network to be tested, and the first type of telemetry information of each data stream is used to characterize a transmission state of a corresponding data stream;
a notification unit 902, configured to determine a target data stream based on an in-band network telemetry policy, and notify a switching device to perform data stream telemetry on the target data stream, where the target data stream is a data stream that needs to be telemetered in each data stream;
and the analysis unit 903 is configured to perform telemetry analysis on the second type of telemetry information of the target data stream reported by the receiving switching device and perform telemetry analysis through the first type of telemetry information and the second type of telemetry information of the target data stream.
In an optional implementation manner, the first type of telemetry information is periodically reported by the switching device, and the first type of telemetry information of each data stream in a set time duration is the first type of telemetry information of each data stream in a period; and/or
The second type of telemetry information is generated from sampled data of the target data stream.
In an alternative embodiment, the in-band network telemetry strategy comprises identification information of a data stream to be telemetered and a sampling rate for sampling the data stream during the telemetry process; the policy determining unit 901 is specifically configured to perform:
determining target data streams needing telemetry in the period based on the first type of telemetry information of each data stream received in the period;
and taking the identification information of the target data stream as the identification information in the in-band network telemetry strategy of the period, and taking the sampling rate of the target data stream as the sampling rate in the in-band network telemetry strategy of the period.
In an optional implementation, the policy determining unit 901 is further configured to perform:
determining a sample rate of the target data stream by:
if the target data stream is not telemetered in the previous period, taking a preset initial sampling rate as a sampling rate corresponding to the target data stream in the current period;
and if the target data stream is telemetered in the previous period, determining the sampling rate corresponding to the target data stream in the current period based on the second type of telemetering information corresponding to the target data stream in the previous period.
In an optional implementation, the policy determining unit 901 is specifically configured to perform:
determining the average sending rate of the target data stream in the previous period according to the sampling time stamp in the second type of telemetering information corresponding to the target data stream in the previous period;
and determining the sampling rate corresponding to the target data stream in the period according to the average sending rate and the target sampling interval corresponding to the network to be tested, wherein the target sampling interval is determined based on the channel bandwidth between the switching devices.
In an alternative embodiment, the notification unit 902 is specifically configured to perform:
based on the in-band network telemetry strategy determined in the period, informing all the switching equipment in the network to be tested of the target data stream required to be telemetered in the period so that the switching equipment carries out data stream telemetry on the target data stream required to be telemetered in the period; or
And informing corresponding switching equipment to carry out data stream telemetry on a target data stream corresponding to the in-band network telemetry sub-strategy based on the in-band network telemetry sub-strategy in the in-band network telemetry strategy determined in the period, wherein the corresponding switching equipment is the switching equipment through which the target data stream corresponding to the in-band network telemetry sub-strategy flows.
In an alternative embodiment, the notification unit 902 is specifically configured to perform:
when an in-band network telemetering sub-strategy is determined, corresponding switching equipment is informed to carry out data flow telemetering on a target data flow corresponding to the in-band network telemetering sub-strategy; or
And after determining that all target data streams needing telemetry in the period correspond to the in-band network telemetry sub-strategies, informing the corresponding switching equipment of each in-band network telemetry sub-strategy to perform data stream telemetry on the target data streams corresponding to the in-band network telemetry sub-strategies.
In an optional implementation, the policy determining unit 901 is specifically configured to perform:
taking the data stream which is in data transmission as a candidate data stream according to the transmission state information corresponding to each data stream in the first type of telemetering information;
and screening target data streams needing telemetry from the candidate data streams according to the forwarding paths of the candidate data streams.
In an optional implementation, the policy determining unit 901 is specifically configured to perform:
taking all candidate data streams as a group of candidate data stream groups, and screening target data streams needing telemetry from the candidate data streams according to forwarding paths of the candidate data streams in the candidate data stream groups; or
Determining the priority corresponding to each candidate data stream according to the forwarding path of each candidate data stream; grouping the candidate data streams according to the corresponding priority of the candidate data streams; the following processes are performed in parallel for at least two groups: and screening target data streams needing telemetry from the candidate data streams according to the forwarding paths of the candidate data streams in the candidate data stream group.
In an optional implementation, the policy determining unit 901 is specifically configured to perform:
selecting the candidate data stream flowing through the first type of switching equipment most from the candidate data streams as a target data stream needing telemetry according to the forwarding path of each candidate data stream, wherein the first type of switching equipment is other switching equipment except the second type of switching equipment in the network to be tested; the second type of switching equipment is determined switching equipment through which a target data stream needing telemetry flows;
and if the ending condition is not met, continuously selecting the candidate data stream which flows through the first type of switching equipment most from the unselected candidate data streams as the target data stream needing telemetry until the ending condition is met.
In an alternative embodiment, the termination condition comprises one of the following:
all the switching equipment in the network to be tested is second-class switching equipment;
the number of selections reaches an upper limit.
In an optional implementation, the policy determining unit 901 is specifically configured to perform:
for each candidate data stream, the following operations are respectively performed:
determining switching equipment through which the candidate data stream flows according to the forwarding path of the candidate data stream;
and allocating priorities to the candidate data streams based on the idle time of the switching equipment through which the candidate data streams flow and the corresponding time weighting factors, wherein the longer the idle time is, the larger the corresponding time weighting factor is, and the idle time is the time between the ending time of the last other data stream flowing through the switching equipment and the starting time of the current candidate data stream flowing through the switching equipment.
Based on the same inventive concept, the disclosure also provides another in-band network telemetry device. Fig. 10 is a block diagram illustrating an in-band network telemetry device 1000 according to an exemplary embodiment. Referring to fig. 10, the apparatus includes a first reporting unit 1001 and a second reporting unit 1002.
A first reporting unit 1001 configured to perform reporting of first-class telemetry information of data streams flowing through the first reporting unit to a controller within a set time length, so that the controller determines an in-band network telemetry policy according to the received first-class telemetry information of each data stream reported by a switching device in a network to be tested, wherein the first-class telemetry information of each data stream is used for representing a transmission state of a corresponding data stream;
the second reporting unit 1002 is configured to determine a target data stream that needs to be telemetered in each data stream after receiving a notification sent by the controller based on the in-band network telemetry policy, and report second type of telemetry information for the target data stream to the controller, so that the controller performs telemetry analysis through the first type of telemetry information and the second type of telemetry information of the target data stream.
In an optional implementation manner, the first type of telemetry information is periodically reported to the controller, and the first type of telemetry information of the data stream flowing through the first type of telemetry information is the first type of telemetry information of the data stream flowing through the first type of telemetry information in one period; and/or
The second type of telemetry information is generated from sampled data of the target data stream.
In an optional embodiment, the second reporting unit 1002 is specifically configured to perform:
and after receiving a notification sent by the controller based on the in-band network telemetry strategy in the period, determining a target data stream required to be telemetered in the period and the sampling rate of the target data stream.
In an optional embodiment, the second reporting unit 1002 is specifically configured to perform:
for each target data stream flowing through the data stream, respectively executing the following operations:
sampling the target data stream according to the sampling rate corresponding to the target data stream to obtain sampling data aiming at the target data stream;
and reporting the second type of telemetering information generated according to the sampling data to the controller.
With regard to the apparatus in the above-described embodiment, the specific manner in which each unit executes the request has been described in detail in the embodiment related to the method, and will not be elaborated here.
Fig. 11 is a block diagram illustrating an electronic device 1100 according to an example embodiment, the apparatus comprising:
a processor 1110;
a memory 1120 for storing instructions executable by the processor 1110;
wherein processor 1110 is configured to execute instructions to implement the in-band network telemetry method in embodiments of the present disclosure.
In an exemplary embodiment, a storage medium comprising instructions, such as the memory 1120 comprising instructions, executable by the processor 1110 of the electronic device 1100 to perform the method described above is also provided. Alternatively, the storage medium may be a non-transitory computer readable storage medium, for example, the non-transitory computer readable storage medium may be a ROM, a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.
Embodiments of the present disclosure also provide a computer program product, which when run on an electronic device, causes the electronic device to execute any one of the above-mentioned in-band network telemetry methods or any one of the methods that may be involved in implementing any one of the in-band network telemetry methods according to embodiments of the present disclosure.
Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of the disclosure following, in general, the principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the disclosure being indicated by the following claims.
It will be understood that the present disclosure is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims (10)

1. An in-band network telemetry method, applied to a controller, comprising:
determining an in-band network telemetry strategy based on received first type telemetry information of each data stream within a set time length, wherein the first type telemetry information is reported by a switching device in a network to be tested, and the first type telemetry information of each data stream is used for representing the transmission state of the corresponding data stream;
determining a target data stream based on the in-band network telemetry strategy, and informing the switching equipment to perform data stream telemetry on the target data stream, wherein the target data stream is a data stream needing telemetry in each data stream;
and receiving second type of telemetering information of the target data stream reported by the switching equipment, and carrying out telemetering analysis through the first type of telemetering information and the second type of telemetering information of the target data stream.
2. The method of claim 1, wherein the first type of telemetry information is periodically reported by the switching device, and the first type of telemetry information for each data stream in the set duration is the first type of telemetry information for each data stream in a period; and/or
The second type of telemetry information is generated from sampled data of the target data stream.
3. The method of claim 2, wherein the in-band network telemetry policy includes identification information of a data stream to be telemetry, and a sampling rate at which sampling of the data stream is performed during the telemetry;
the determining an in-band network telemetry strategy based on the received first type of telemetry information of each data stream within a set time duration comprises:
determining a target data stream needing telemetry in the period based on the first type of telemetry information of each data stream received in the period;
and taking the identification information of the target data stream as the identification information in the in-band network telemetry strategy of the period, and taking the sampling rate of the target data stream as the sampling rate in the in-band network telemetry strategy of the period.
4. The method of claim 3, wherein the sample rate of the target data stream is determined by:
if the target data stream is not telemetered in the previous period, taking a preset initial sampling rate as a sampling rate corresponding to the target data stream in the current period;
and if the target data stream is telemetered in the previous period, determining the sampling rate corresponding to the target data stream in the current period based on the second type of telemetering information corresponding to the target data stream in the previous period.
5. An in-band network telemetry method, applied to a switching device, comprising:
reporting first type telemetering information of data streams flowing through the controller within a set time length to a controller, so that the controller determines an in-band network telemetering strategy according to the received first type telemetering information of each data stream reported by a switching device in a network to be tested, wherein the first type telemetering information of each data stream is used for representing the transmission state of the corresponding data stream;
after receiving a notification sent by the controller based on the in-band network telemetry strategy, determining a target data stream needing telemetry in each data stream, and reporting second type of telemetry information aiming at the target data stream to the controller, so that the controller carries out telemetry analysis through the first type of telemetry information and the second type of telemetry information of the target data stream.
6. An in-band network telemetry device, comprising:
the strategy determination unit is configured to execute first type of telemetering information of each data stream in a received set time length and determine an in-band network telemetering strategy, wherein the first type of telemetering information is reported by switching equipment in a network to be tested, and the first type of telemetering information of each data stream is used for representing the transmission state of the corresponding data stream;
a notification unit configured to determine a target data stream based on the in-band network telemetry policy, and notify the switching device to perform data stream telemetry on the target data stream, where the target data stream is a data stream that needs to be telemetered in each data stream;
and the analysis unit is configured to execute receiving of second type of telemetry information of the target data stream reported by the switching device, and perform telemetry analysis through the first type of telemetry information and the second type of telemetry information of the target data stream.
7. An in-band network telemetry device, comprising:
the first reporting unit is configured to perform reporting of first-class telemetering information of data streams flowing through the first reporting unit within a set time length to a controller, so that the controller determines an in-band network telemetering strategy according to the received first-class telemetering information of each data stream reported by switching equipment in a network to be tested, wherein the first-class telemetering information of each data stream is used for representing a transmission state of the corresponding data stream;
and the second reporting unit is configured to determine a target data stream required to be telemetered in each data stream after receiving a notification sent by the controller based on the in-band network telemetry policy, and report second type telemetry information for the target data stream to the controller, so that the controller performs telemetry analysis through the first type telemetry information and the second type telemetry information of the target data stream.
8. An electronic device, comprising:
a processor;
a memory for storing the processor-executable instructions;
wherein the processor is configured to execute the instructions to implement the in-band network telemetry method of any one of claims 1 to 4 or the in-band network telemetry method of claim 5.
9. A storage medium, wherein instructions in the storage medium, when executed by a processor of an electronic device, enable the electronic device to perform the in-band network telemetry method of any one of claims 1 to 4 or the in-band network telemetry method of claim 5.
10. A computer program product comprising a computer program, wherein the computer program when executed by a processor implements the in-band network telemetry method of any one of claims 1 to 4 or the in-band network telemetry method of claim 5.
CN202110396664.4A 2021-04-13 2021-04-13 In-band network telemetry method, device, electronic equipment and storage medium Active CN113242142B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110396664.4A CN113242142B (en) 2021-04-13 2021-04-13 In-band network telemetry method, device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110396664.4A CN113242142B (en) 2021-04-13 2021-04-13 In-band network telemetry method, device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN113242142A true CN113242142A (en) 2021-08-10
CN113242142B CN113242142B (en) 2022-04-29

Family

ID=77128011

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110396664.4A Active CN113242142B (en) 2021-04-13 2021-04-13 In-band network telemetry method, device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN113242142B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115051959A (en) * 2022-08-16 2022-09-13 广东省新一代通信与网络创新研究院 Remote measuring method and system based on user content
CN115442275A (en) * 2022-07-27 2022-12-06 北京邮电大学 Hybrid telemetry method and system based on hierarchical trusted streams
CN116319468A (en) * 2023-05-23 2023-06-23 苏州浪潮智能科技有限公司 Network telemetry method, device, switch, network, electronic equipment and medium

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110282930A1 (en) * 2010-05-17 2011-11-17 Mckesson Financial Holdings Limited Method and apparatus for providing in-band client telemetry data
CN108199924A (en) * 2018-01-26 2018-06-22 北京邮电大学 The whole network traffic visualization method and device based on band network telemetering
US10193811B1 (en) * 2017-07-05 2019-01-29 Juniper Networks, Inc. Flow distribution using telemetry and machine learning techniques
CN109309605A (en) * 2018-11-26 2019-02-05 北京邮电大学 Band network telemetry system and method
US20190238443A1 (en) * 2018-01-26 2019-08-01 Cisco Technology, Inc. Dynamic selection of models for hybrid network assurance architectures
US20190372877A1 (en) * 2018-06-04 2019-12-05 Cisco Technology, Inc. In-situ oam for multicast path, telemetry data collection and receive-only service function proof of transit
KR102054998B1 (en) * 2018-10-08 2020-01-22 에스케이 텔레콤주식회사 Method and apparatus for supporting in-band network telemetry
US20200067792A1 (en) * 2018-08-21 2020-02-27 Argela Yazilim Ve Bilisim Teknolojileri San Ve Tic A S System and method for in-band telemetry target selection
JP2020031339A (en) * 2018-08-22 2020-02-27 日本電信電話株式会社 Controller, system, and control method
US20200120029A1 (en) * 2018-10-12 2020-04-16 Dell Products L.P. In-band telemetry congestion control system
CN111130878A (en) * 2019-12-23 2020-05-08 成都数维通信技术有限公司 Out-of-band network remote measuring system and method
CN111224839A (en) * 2019-12-26 2020-06-02 长沙星融元数据技术有限公司 Verification method and device for in-band network remote control function, storage medium and electronic equipment
CN111262752A (en) * 2020-01-13 2020-06-09 新华三信息安全技术有限公司 In-band telemetry method and device
US10686671B1 (en) * 2018-11-05 2020-06-16 Keysight Technologies, Inc. Methods, systems, and computer readable media for testing network elements of an in-band network telemetry capable network
CN111835588A (en) * 2020-06-29 2020-10-27 北京交通大学 In-band network remote measurement bearer flow selection method and system
CN112422498A (en) * 2020-09-04 2021-02-26 网络通信与安全紫金山实验室 In-band network remote measuring method, system and computer readable storage medium
CN112436984A (en) * 2020-11-30 2021-03-02 清华大学 Data center network telemetry method, system, storage medium and telemetry server
US20210084530A1 (en) * 2019-09-13 2021-03-18 Futurewei Technologies, Inc. Adaptive In-band Network Telemetry For Full Network Coverage

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110282930A1 (en) * 2010-05-17 2011-11-17 Mckesson Financial Holdings Limited Method and apparatus for providing in-band client telemetry data
US10193811B1 (en) * 2017-07-05 2019-01-29 Juniper Networks, Inc. Flow distribution using telemetry and machine learning techniques
CN108199924A (en) * 2018-01-26 2018-06-22 北京邮电大学 The whole network traffic visualization method and device based on band network telemetering
US20190238443A1 (en) * 2018-01-26 2019-08-01 Cisco Technology, Inc. Dynamic selection of models for hybrid network assurance architectures
CN112119616A (en) * 2018-06-04 2020-12-22 思科技术公司 In-place operation implementation and management (IOAM) for multicast and unicast traffic involving packet replication
US20190372877A1 (en) * 2018-06-04 2019-12-05 Cisco Technology, Inc. In-situ oam for multicast path, telemetry data collection and receive-only service function proof of transit
US20200067792A1 (en) * 2018-08-21 2020-02-27 Argela Yazilim Ve Bilisim Teknolojileri San Ve Tic A S System and method for in-band telemetry target selection
JP2020031339A (en) * 2018-08-22 2020-02-27 日本電信電話株式会社 Controller, system, and control method
KR102054998B1 (en) * 2018-10-08 2020-01-22 에스케이 텔레콤주식회사 Method and apparatus for supporting in-band network telemetry
US20200120029A1 (en) * 2018-10-12 2020-04-16 Dell Products L.P. In-band telemetry congestion control system
US10686671B1 (en) * 2018-11-05 2020-06-16 Keysight Technologies, Inc. Methods, systems, and computer readable media for testing network elements of an in-band network telemetry capable network
CN109309605A (en) * 2018-11-26 2019-02-05 北京邮电大学 Band network telemetry system and method
US20210084530A1 (en) * 2019-09-13 2021-03-18 Futurewei Technologies, Inc. Adaptive In-band Network Telemetry For Full Network Coverage
CN111130878A (en) * 2019-12-23 2020-05-08 成都数维通信技术有限公司 Out-of-band network remote measuring system and method
CN111224839A (en) * 2019-12-26 2020-06-02 长沙星融元数据技术有限公司 Verification method and device for in-band network remote control function, storage medium and electronic equipment
CN111262752A (en) * 2020-01-13 2020-06-09 新华三信息安全技术有限公司 In-band telemetry method and device
CN111835588A (en) * 2020-06-29 2020-10-27 北京交通大学 In-band network remote measurement bearer flow selection method and system
CN112422498A (en) * 2020-09-04 2021-02-26 网络通信与安全紫金山实验室 In-band network remote measuring method, system and computer readable storage medium
CN112436984A (en) * 2020-11-30 2021-03-02 清华大学 Data center network telemetry method, system, storage medium and telemetry server

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
NGUYEN VAN TU; JONGHWAN HYUN; JAMES WON-KI HONG: "Towards ONOS-based SDN monitoring using in-band network telemetry", 《2017 19TH ASIA-PACIFIC NETWORK OPERATIONS AND MANAGEMENT SYMPOSIUM (APNOMS)》 *
YUNSENXIAO LIN; YU ZHOU; ZHENGZHENG LIU; KE LIU; YANGYANG WANG: "NetView: Towards On-Demand Network-Wide", 《ICC 2020 - 2020 IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS (ICC)》 *
刘争争;毕军;周禹;王旸旸;林耘森箫: "基于P4的主动网络遥测机制", 《通信学报》 *
毛东峰; 贾曼; 何晓明; 刘志华: "网络遥测技术及其在网络自动化运维中的应用", 《电信科学》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115442275A (en) * 2022-07-27 2022-12-06 北京邮电大学 Hybrid telemetry method and system based on hierarchical trusted streams
CN115442275B (en) * 2022-07-27 2024-02-27 北京邮电大学 Hybrid telemetry method and system based on hierarchical trusted streams
CN115051959A (en) * 2022-08-16 2022-09-13 广东省新一代通信与网络创新研究院 Remote measuring method and system based on user content
CN115051959B (en) * 2022-08-16 2022-10-21 广东省新一代通信与网络创新研究院 Remote measuring method and system based on user content
WO2024037024A1 (en) * 2022-08-16 2024-02-22 广东省新一代通信与网络创新研究院 Telemetry method and system based on user content
CN116319468A (en) * 2023-05-23 2023-06-23 苏州浪潮智能科技有限公司 Network telemetry method, device, switch, network, electronic equipment and medium
CN116319468B (en) * 2023-05-23 2023-08-04 苏州浪潮智能科技有限公司 Network telemetry method, device, switch, network, electronic equipment and medium

Also Published As

Publication number Publication date
CN113242142B (en) 2022-04-29

Similar Documents

Publication Publication Date Title
CN113242142B (en) In-band network telemetry method, device, electronic equipment and storage medium
Su et al. CeMon: A cost-effective flow monitoring system in software defined networks
US10924393B2 (en) Per-flow call admission control using a predictive model to estimate tunnel QoS in SD-WAN networks
Chowdhury et al. Payless: A low cost network monitoring framework for software defined networks
Su et al. FlowCover: Low-cost flow monitoring scheme in software defined networks
US20220360502A1 (en) Adaptive stress testing of sd-wan tunnels for what-if scenario model training
US11005705B1 (en) Network fault detection and quality of service improvement systems and methods
US9736041B2 (en) Transparent software-defined network management
JP4607254B2 (en) Network monitoring device, bus system monitoring device, method, and program
Binsahaq et al. A survey on autonomic provisioning and management of QoS in SDN networks
CN109495322A (en) Network failure locating method, relevant device and computer storage medium
EP1751920A1 (en) Method and apparatus for automating and scaling active probing-based ip network performance monitoring and diagnosis
Chen et al. A novel AP selection scheme in software defined networking enabled WLAN
Asgari et al. A scalable real-time monitoring system for supporting traffic engineering
CN113036930A (en) Power grid data communication management system
CN113114480A (en) Data reporting method and related equipment
US9130839B1 (en) Methods, systems and computer program product for synchronization of network performance tests
US20180176872A1 (en) Metered interface
US20190319880A1 (en) Software defined network and method for operating the same
CN111385162B (en) Network detection method and device, computer equipment and storage medium
Yan et al. MP-DQN Based Task Scheduling for RAN QoS Fluctuation Minimizing in Public Clouds
Yang et al. A technical research towards 5G SLA: System definition, sense and assurance solution
Ren et al. End-to-End Network SLA Quality Assurance for C-RAN: A Closed-Loop Management Method Based on Digital Twin Network
Guo et al. Network Quality Monitoring for Typical Power Services
WO2024093663A1 (en) Data management method, apparatus and system, and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant