Disclosure of Invention
In order to solve the problem that the coverage rate of an active INT method or a passive INT method which is independently deployed in a large-scale network is low or the cost is high, the invention provides a method and a system for transmitting telemetry tasks of a hybrid in-band network.
In order to solve the above technical problems, the present invention provides a method for transmitting a telemetry task in a hybrid in-band network, comprising the following steps:
Obtaining a link topology diagram, wherein the link topology diagram comprises a plurality of probes, a plurality of task nodes are arranged between any two probes, one link corresponds to each of the probes and the task nodes, one link corresponds to each of the two task nodes, and for each link, the link is used for transmitting data packets, and each link corresponds to one transmission delay time when transmitting the data packets;
According to the historical communication task, determining a plurality of first target nodes from each task node and a first target link corresponding to each first target node, wherein the first target nodes are task nodes contained in the historical communication task, and the first target links are links used for transmitting data packets in the historical communication task;
Taking any one first target node as a first current node, if the first current node cannot communicate with other first target nodes except the first current node, determining a second target link from the links according to each first target node and each link, wherein the second target link is a link which is missing when the first current node cannot communicate with other first target nodes except the first current node;
according to the network telemetry task, a transmitting probe and a receiving probe are determined, wherein the transmitting probe is a probe for transmitting data packets, and the receiving probe is a probe for receiving the data packets;
the data transmission path between the transmitting probe and the receiving probe is determined according to the transmitting probe, the receiving probe, each first target node, each first target link and each second target link.
The method for transmitting the remote measurement tasks of the hybrid in-band network has the beneficial effects that: the passive INT method is used for determining a first target node and a first target link according to historical communication tasks, and the active INT method is used for planning a second target link from the links, so that the active INT method and the passive INT method are combined and deployed in a large-scale network to realize a network telemetry task between a transmitting probe and a receiving probe, and only the second target link between part of task nodes is planned, so that the cost of the active INT method is reduced, and the problem of low coverage rate or high cost of the active INT method or the passive INT method deployed in the large-scale network alone is solved.
Based on the technical scheme, the method for transmitting the remote measurement tasks of the hybrid in-band network can be improved as follows.
Further, the method comprises the following steps:
s12, taking any one first target node as a second current node;
s13, taking each first target node communicated with the second current node and the second current node as the second target node;
S14, taking each second target node as a task node set;
S15, taking any one first target node except the second target node as a second current node, and repeating the steps S13-S15 until all the first target nodes are contained in each task node set;
Taking any one first target node as a first current node, if the first current node cannot communicate with all first target nodes except the first current node, determining a second target link from links according to each first target node and each link, wherein the determining comprises the following steps:
And taking any one first target node as a first current node, and determining a second target link from the links according to each task node set if the first current node cannot communicate with all the first target nodes except the first current node.
The beneficial effects of adopting the further scheme are as follows: and taking the second target node which can be communicated as a task node set, so as to actively plan a second target link, and enable the task node sets to be communicated.
Further, the determining, according to each task node set, the second target link corresponding to each task node set from the links includes:
Taking each task node set as a first task node set, and taking each task node set except the first task node set as a second task node set;
for each second target node in the first task node set, acquiring a first transmission delay time corresponding to each second target node in the second task node set and the second target node, wherein the first transmission delay time is a delay time required by a data packet to be transmitted from the second target node to a second target node designated in the second task node set;
And determining a second target link corresponding to each task node set according to each first transmission delay time and each second target node.
The beneficial effects of adopting the further scheme are as follows: in order to make the whole data transmission path more efficient when planning the second target link, it is necessary to plan a data transmission path with a smaller delay time, and therefore, the second target link is determined according to the first transmission delay time between the second target nodes in different task node sets.
Further, determining the second target link corresponding to each task node set according to each first transmission delay time and each second target node includes:
And taking the first transmission delay time with the minimum duration in each first transmission delay time as a first target transmission delay time, and selecting a link between two second target nodes corresponding to the first target transmission delay time as a second target link corresponding to each task node set.
The beneficial effects of adopting the further scheme are as follows: according to the first target transmission delay time, the fastest data transmission path between different task node sets, namely a second target link, can be planned.
Further, the method comprises the following steps:
Determining all first communication graphs between the transmitting probe and the receiving probe according to the transmitting probe, the receiving probe, each task node and each link, wherein the first communication graphs are path graphs formed by task nodes and links through which data packets are transmitted from the transmitting probe to the receiving probe;
Determining all second communication subgraphs between the transmitting probe and the receiving probe according to the transmitting probe, the receiving probe, each first target node, each first target link and each second target link, wherein the second communication subgraphs are path diagrams formed by the first target nodes, the first target links and the second target links through which data packets are transmitted from the transmitting probe to the receiving probe;
determining a data transmission path between the transmitting probe and the receiving probe according to the transmitting probe, the receiving probe, each first target node, each first target link and each second target link, comprising:
And determining a data transmission path between the transmitting probe and the receiving probe according to each first communication sub-graph and each second communication sub-graph.
The beneficial effects of adopting the further scheme are as follows: by comparing all the first connected subgraphs with the constructed second connected subgraphs, an optimal data transmission path between the transmitting probe and the receiving probe can be determined.
Further, the method comprises the following steps:
Determining the overlapping rate of each first communication sub-graph and each second communication sub-graph according to each first communication sub-graph and each second communication sub-graph, wherein the overlapping rate is the overlapping rate of the first communication sub-graph and the second communication sub-graph on a path;
determining a data transmission path between the transmitting probe and the receiving probe according to each first communication sub-graph and each second communication sub-graph, comprising:
A data transmission path between the transmitting probe and the receiving probe is determined based on the respective overlap rates.
The beneficial effects of adopting the further scheme are as follows: the data transmission paths between the transmitting probe and the receiving probe are more, namely, the first sub-communication graphs are more, so that each first sub-communication graph can correspond to a second sub-communication graph with the highest overlapping rate, and at the moment, the second sub-communication graph can replace the first sub-communication graph to be used as the optimal data transmission path.
Further, the method comprises the following steps:
determining a second transmission delay time corresponding to each second connected subgraph according to each second connected subgraph, wherein the second transmission delay time is the delay time required by the data packet to be transmitted from the transmitting probe to the receiving probe through the second connected subgraph;
Determining a data transmission path between the transmitting probe and the receiving probe according to each first communication sub-graph and each second communication sub-graph, comprising:
and determining a data transmission path between the transmitting probe and the receiving probe according to each overlapping rate and each second transmission delay time.
The beneficial effects of adopting the further scheme are as follows: since each link corresponds to a transmission delay time, a second transmission delay time of each second communication sub-graph needs to be obtained, and when selecting the second communication sub-graph corresponding to each first communication sub-graph, not only the overlapping rate but also the second transmission delay time need to be considered, so as to ensure that the transmission efficiency of the data transmission path between the transmitting probe and the receiving probe is higher.
In a second aspect, the present invention provides a hybrid in-band network telemetry task transmission system, comprising:
The system comprises a link topology diagram acquisition module, a transmission delay module and a transmission delay module, wherein the link topology diagram acquisition module is used for including a plurality of probes in a link topology diagram, a plurality of task nodes are included between any two probes, one link corresponds to each of the probes and the task nodes, one link corresponds to each of the two task nodes, and for each link, the link is used for transmitting a data packet, and each link corresponds to one transmission delay time when transmitting the data packet;
The first acquisition module is used for determining a plurality of first target nodes from all task nodes and a first target link corresponding to each first target node, wherein the first target nodes are task nodes contained in a historical communication task, and the first target links are links used for transmitting data packets in the historical communication task;
The second target link acquisition module is used for taking any one first target node as a first current node, if the first current node cannot be communicated with other first target nodes except the first current node, determining a second target link from the links according to each first target node and each link, wherein the second target link is a link which is missing when the first current node cannot be communicated with other first target nodes except the first current node;
The probe acquisition module is used for determining a transmitting probe and a receiving probe according to a network telemetry task, wherein the transmitting probe is a probe for transmitting a data packet, and the receiving probe is a probe for receiving the data packet;
And the transmission path acquisition module is used for determining a data transmission path between the transmitting probe and the receiving probe according to the transmitting probe, the receiving probe, each first target node, each first target link and each second target link.
In a third aspect, the present invention further provides an electronic device, including a memory, a processor, and a program stored in the memory and running on the processor, where the processor implements the steps of a hybrid in-band network telemetry task transmission method as described above when the processor executes the program.
In a fourth aspect, the present invention also provides a computer readable storage medium, where instructions are stored, which when executed on a terminal device, cause the terminal device to perform the steps of a hybrid in-band network telemetry task transmission method as described above.
Detailed Description
The following examples are further illustrative and supplementary of the present invention and are not intended to limit the invention in any way.
The following describes a method and a system for transmitting a telemetry task of a hybrid in-band network in accordance with an embodiment of the present invention with reference to the accompanying drawings.
As shown in fig. 1, the method for transmitting a telemetry task in a hybrid in-band network according to the embodiment of the present application may be applied to a terminal device, and the scheme of the present application is described using the terminal device as an execution body, where the terminal device is connected to a database, and the terminal device may be a computer, a server, etc. for executing the method for transmitting a telemetry task in a hybrid in-band network, and the database is used for storing a link topology map and a historical communication task.
Specifically, the method for transmitting the telemetry tasks of the hybrid in-band network comprises the following steps:
S1, acquiring a link topology diagram, wherein the link topology diagram comprises a plurality of probes, a plurality of task nodes are arranged between any two probes, one link corresponds to each of the probes and the task nodes, one link corresponds to each of the two task nodes, and for each link, the link is used for transmitting a data packet, and each link corresponds to one transmission delay time when transmitting the data packet;
S2, determining a plurality of first target nodes from all task nodes according to the historical communication task and first target links corresponding to the first target nodes, wherein the first target nodes are task nodes contained in the historical communication task, and the first target links are links used for transmitting data packets in the historical communication task;
S3, taking any one first target node as a first current node, if the first current node cannot communicate with other first target nodes except the first current node, determining a second target link from the links according to each first target node and each link, wherein the second target link is a missing link when the first current node cannot communicate with other first target nodes except the first current node;
s4, determining a transmitting probe and a receiving probe according to a network telemetry task, wherein the transmitting probe is a probe for transmitting a data packet, and the receiving probe is a probe for receiving the data packet;
and S5, determining a data transmission path between the transmitting probe and the receiving probe according to the transmitting probe, the receiving probe, each first target node, each first target link and each second target link.
Optionally, as shown in fig. 2, a link topology diagram is acquired, where a host represents a transmitting probe and a receiving probe, numbers corresponding to the host represent sequence numbers, each letter represents a task node, a straight line between the probe and the task node represents a link, a straight line between the task node and the task node also represents a link, and numbers on the link represent corresponding transmission delay times when data packets are transmitted through the link.
Alternatively, the passive INT method cannot specify a data transmission path according to a network telemetry task, so that a previous task node and a link can only be obtained according to a historical communication task, as shown in fig. 3, that is, a first target node and a first target link that are queried by a terminal device according to the passive INT method through a database, where a represents a first target node and b represents a first target link.
Optionally, for ease of understanding, the first target nodes and the first target links are drawn out to form fig. 4, and as can be seen from fig. 4, E, D, G, H, J, I, due to the existence of the first target links, communication can be achieved between E, D, G, H, J, I, and similarly, communication can be achieved between K, L, O, but if any one of E, D, G, H, J, I is taken as the first current node, the first current node cannot be communicated K, L, O, based on which, a new data transmission path needs to be constructed by an active INT manner, so that communication can be achieved between E, D, G, H, J, I, K, L, O.
Optionally, the method further comprises:
s12, taking any one first target node as a second current node;
s13, taking each first target node communicated with the second current node and the second current node as the second target node;
S14, taking each second target node as a task node set;
S15, taking any one first target node except the second target node as a second current node, and repeating the steps S13-S15 until all the first target nodes are contained in each task node set;
Taking any one first target node as a first current node, if the first current node cannot communicate with all first target nodes except the first current node, determining a second target link from links according to each first target node and each link, wherein the determining comprises the following steps:
And taking any one first target node as a first current node, and determining a second target link from the links according to each task node set if the first current node cannot communicate with all the first target nodes except the first current node.
Alternatively, as shown in fig. 4, for example, E is taken as the second current node, it is known that E, D, G, H, J, I may be communicated, and thus E, D, G, H, J, I is taken as one task node set, and for example, K is taken as the second current node, it is known that K, L, O may be communicated, and thus K, L, O is taken as one task node set, E, D, G, H, J, I is taken as the first task node set, and K, L, O is taken as the second task node set for convenience of explanation.
Optionally, the determining, according to each task node set, the second target link corresponding to each task node set from the links includes:
Taking each task node set as a first task node set, and taking each task node set except the first task node set as a second task node set;
for each second target node in the first task node set, acquiring a first transmission delay time corresponding to each second target node in the second task node set and the second target node, wherein the first transmission delay time is a delay time required by a data packet to be transmitted from the second target node to a second target node designated in the second task node set;
And determining a second target link corresponding to each task node set according to each first transmission delay time and each second target node.
Optionally, in order to make the transmission efficiency of the data packet higher, when the active INT method constructs a new data transmission path, it needs to consider a first transmission delay time between the second target nodes, where the shorter the first transmission delay time is, which indicates that the transmission efficiency of the data packet is higher, for example, there are links between I in the first task node set and K in the second task node set (see fig. 2 for details), there are links between J in the first task node set and O in the second task node set, where the first transmission delay time of the links between I-ks is 4,J-O and the first transmission delay time of the links between I-ks is 8, and it is obvious that a link is constructed between I-ks, where the transmission efficiency of the data packet is higher, and meanwhile, it is also able to communicate E, D, G, H, J, I, K, L, O, so, as shown in fig. 5, a second target link is constructed between J-ks, based on this, and according to each first transmission delay time and each second target node, determining a second target link corresponding to each task node set includes:
And taking the first transmission delay time with the minimum duration in each first transmission delay time as a first target transmission delay time, and selecting a link between two second target nodes corresponding to the first target transmission delay time as a second target link corresponding to each task node set.
Optionally, the first transmission delay time between the second target nodes of different task node sets is calculated by the dijkstra algorithm, which is not described in detail since it is a prior art.
Optionally, as shown in fig. 6, when E, D, G, H, J, I, K, L, O is connected, a data transmission path of the transmitting probe F-receiving probe P can be obtained, and when the network telemetry task is to detect F-P, the constructed data transmission path can be used, but the data transmission path of the transmitting probe F-receiving probe P is not the optimal path, so that the data transmission path needs to be optimized, wherein the network telemetry task is to test the network performance of the data transmission path when the data packet is transmitted between the transmitting probe and the receiving probe.
Optionally, the method further comprises:
Determining all first communication graphs between the transmitting probe and the receiving probe according to the transmitting probe, the receiving probe, each task node and each link, wherein the first communication graphs are path graphs formed by task nodes and links through which data packets are transmitted from the transmitting probe to the receiving probe;
Determining all second communication subgraphs between the transmitting probe and the receiving probe according to the transmitting probe, the receiving probe, each first target node, each first target link and each second target link, wherein the second communication subgraphs are path diagrams formed by the first target nodes, the first target links and the second target links through which data packets are transmitted from the transmitting probe to the receiving probe;
determining a data transmission path between the transmitting probe and the receiving probe according to the transmitting probe, the receiving probe, each first target node, each first target link and each second target link, comprising:
And determining a data transmission path between the transmitting probe and the receiving probe according to each first communication sub-graph and each second communication sub-graph.
Alternatively, as shown in FIG. 5, the data transmission paths of the transmitting probe F-receiving probe P include F-E-D-H-I-K-L-O-P and F-E-D-I-K-L-O-P, so F-E-D-H-I-K-L-O-P and F-E-D-I-K-L-O-P need to be used as the second connected subgraph to determine the optimal data transmission path.
Optionally, on the premise that no new data transmission path is constructed, a DFS algorithm is adopted to obtain all the shortest data transmission paths between the transmitting probe and the receiving probe, where the first sub-communication graph may include the second communication subgraph or may not include the second communication subgraph, so that an overlapping rate of each first sub-communication graph and each second sub-communication graph needs to be obtained, for example, an overlapping rate of the shortest first sub-communication subgraph and F-E-D-I-K-L-O-P is the highest, and then F-E-D-I-K-L-O-P is taken as an optimal data transmission path, based on this, the method further includes:
Determining the overlapping rate of each first communication sub-graph and each second communication sub-graph according to each first communication sub-graph and each second communication sub-graph, wherein the overlapping rate is the overlapping rate of the first communication sub-graph and the second communication sub-graph on a path;
determining a data transmission path between the transmitting probe and the receiving probe according to each first communication sub-graph and each second communication sub-graph, comprising:
A data transmission path between the transmitting probe and the receiving probe is determined based on the respective overlap rates.
Optionally, although the optimal data transmission path can be determined by the overlap ratio, the overlap ratio does not take into account the transmission delay time of the link, based on which the method further comprises:
determining a second transmission delay time corresponding to each second connected subgraph according to each second connected subgraph, wherein the second transmission delay time is the delay time required by the data packet to be transmitted from the transmitting probe to the receiving probe through the second connected subgraph;
Determining a data transmission path between the transmitting probe and the receiving probe according to each first communication sub-graph and each second communication sub-graph, comprising:
and determining a data transmission path between the transmitting probe and the receiving probe according to each overlapping rate and each second transmission delay time.
Alternatively, as shown in fig. 5, the second transmission delay time of F-E-D-H-I-K-L-O-P is 30, and the second transmission delay time of F-E-D-I-K-L-O-P is 26, so that the F-E-D-I-K-L-O-P has the highest overlapping rate with the shortest first sub-communication sub-graph, and the second transmission delay time is also the shortest, and thus, F-E-D-I-K-L-O-P is used as the data transmission path between the optimal transmitting probe and the receiving probe.
Alternatively, a network telemetry task transmission method of hybrid in-band network is used to perform network telemetry task experiments with the active INT method alone or the passive INT method alone, and the results shown in fig. 6-7 are obtained, as shown in fig. 6, where number of experiments represents the number of experiments, TELEMETRY COVERAGE RATIO represents the coverage rate, proactive INT represents the active INT, passive INT represents the passive INT, hawkeys represents a telemetry task transmission method of hybrid in-band network, and it can be seen in fig. 6 that the coverage rate of the passive INT is low, but the invention can achieve 100% telemetry coverage (full link coverage) as the active INT each time.
As also shown in fig. 7, PASSIVE INT coverage ratio represents passive INT coverage, bandwldth cost reductlon ratio represents broadband cost reduction rate, avg represents average bandwidth optimization overhead, and it can be seen from fig. 7 that compared with active INT, the present invention can bring stable bandwidth overhead optimization on the basis of achieving telemetry coverage of 100%, up to 88%, and average bandwidth optimization overhead is only 55.2%.
As shown in fig. 8, a hybrid in-band network telemetry task transmission system according to an embodiment of the present invention includes:
The link topology diagram obtaining module 201 is configured to include a plurality of probes in the link topology diagram, where a plurality of task nodes are included between any two probes, one link corresponds to a space between the probe and each task node, and one link corresponds to each space between every two task nodes, and for each link, the link is used for transmitting a data packet, and each link corresponds to a transmission delay time when transmitting the data packet;
a first obtaining module 202, configured to determine a plurality of first target nodes from the task nodes, and a first target link corresponding to each first target node, where the first target node is a task node included in a historical communication task, and the first target link is a link used for transmitting a data packet in the historical communication task;
The second target link obtaining module 203 is configured to take any one of the first target nodes as a first current node, and if the first current node cannot communicate with other first target nodes except the first current node, determine, according to each first target node and each link, a second target link from the links, where the second target link is a link that is missing when the first current node cannot communicate with other first target nodes except the first current node;
The probe acquisition module 204 is configured to determine a transmitting probe and a receiving probe according to a network telemetry task, where the transmitting probe is a probe for transmitting a data packet, and the receiving probe is a probe for receiving the data packet;
a transmission path acquisition module 205, configured to determine a data transmission path between the transmitting probe and the receiving probe according to the transmitting probe, the receiving probe, each first target node, each first target link, and each second target link.
Optionally, the system further comprises:
The second current node acquisition module is used for taking any one of the first target nodes as a second current node;
The second target node acquisition module is used for taking each first target node communicated with the second current node and the second current node as the second target node;
The task node set acquisition module is used for taking each second target node as a task node set;
The judging module is used for taking any one first target node except the second target node as a second current node, and repeating the processing procedures corresponding to the second target node acquisition module, the task node set acquisition module and the judging module until all the first target nodes are contained in each task node set;
The second target link acquisition module 203 is further configured to:
And taking any one first target node as a first current node, and determining a second target link from the links according to each task node set if the first current node cannot communicate with all the first target nodes except the first current node.
Optionally, the second target link acquiring module 203 further includes:
The second acquisition module is used for taking each task node set as a first task node set and taking each task node set except the first task node set as a second task node set;
The first transmission delay time acquisition module is used for acquiring, for each second target node in the first task node set, a first transmission delay time corresponding to each second target node in the second task node set, wherein the first transmission delay time is a delay time required by a data packet to be transmitted from the second target node to a second target node designated in the second task node set;
And the third acquisition module is used for determining a second target link corresponding to each task node set according to each first transmission delay time and each second target node.
Optionally, the third obtaining module is further configured to:
And taking the first transmission delay time with the minimum duration in each first transmission delay time as a first target transmission delay time, and selecting a link between two second target nodes corresponding to the first target transmission delay time as a second target link corresponding to each task node set.
Optionally, the method further comprises:
The first sub-communication diagram acquisition module is used for determining all first communication diagrams between the transmitting probe and the receiving probe according to the transmitting probe, the receiving probe, each task node and each link, wherein the first communication diagrams are path diagrams formed by the task nodes and the links through which the data packets are transmitted from the transmitting probe to the receiving probe;
the second sub-communication graph acquisition module is used for determining all second communication subgraphs between the transmitting probe and the receiving probe according to the transmitting probe, the receiving probe, each first target node, each first target link and each second target link, wherein the second communication subgraphs are path graphs formed by the first target nodes, the first target links and the second target links through which data packets are transmitted from the transmitting probe to the receiving probe;
the transmission path acquisition module 205 is further configured to:
And determining a data transmission path between the transmitting probe and the receiving probe according to each first communication sub-graph and each second communication sub-graph.
Optionally, the method further comprises:
the overlapping rate acquisition module is used for determining the overlapping rate of each first communication sub-graph and each second communication sub-graph according to each first communication sub-graph and each second communication sub-graph, wherein the overlapping rate is the overlapping rate of the first communication sub-graph and the second communication sub-graph on a path;
the transmission path acquisition module 205 is further configured to:
A data transmission path between the transmitting probe and the receiving probe is determined based on the respective overlap rates.
Optionally, the method further comprises:
The second transmission delay time acquisition module is used for determining second transmission delay time corresponding to each second communication subgraph according to each second communication subgraph, wherein the second transmission delay time is delay time required by the data packet to be transmitted from the transmitting probe to the receiving probe through the second communication subgraph;
the transmission path acquisition module 205 is further configured to:
and determining a data transmission path between the transmitting probe and the receiving probe according to each overlapping rate and each second transmission delay time.
Those skilled in the art will appreciate that the present invention may be implemented as a system, method, or computer program product. Accordingly, the present disclosure may be embodied in the following forms, namely: either entirely hardware, entirely software (including firmware, resident software, micro-code, etc.), or entirely software, or a combination of hardware and software, referred to herein generally as a "circuit," module "or" system. Furthermore, in some embodiments, the invention may also be embodied in the form of a computer program product in one or more computer-readable media, which contain computer-readable program code. The computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing.
In the description of the present specification, a description referring to terms "one embodiment," "some embodiments," "examples," "specific examples," or "some examples," etc., means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the present invention. In this specification, schematic representations of the above terms are not necessarily directed to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Furthermore, the different embodiments or examples described in this specification and the features of the different embodiments or examples may be combined and combined by those skilled in the art without contradiction.
While embodiments of the present invention have been shown and described above, it will be understood that the above embodiments are illustrative and not to be construed as limiting the invention, and that variations, modifications, alternatives and variations may be made to the above embodiments by one of ordinary skill in the art within the scope of the invention.