CN116566834A - Method for determining data transmission path and related device - Google Patents

Method for determining data transmission path and related device Download PDF

Info

Publication number
CN116566834A
CN116566834A CN202310594966.1A CN202310594966A CN116566834A CN 116566834 A CN116566834 A CN 116566834A CN 202310594966 A CN202310594966 A CN 202310594966A CN 116566834 A CN116566834 A CN 116566834A
Authority
CN
China
Prior art keywords
time
transmission
node
time slot
links
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.)
Pending
Application number
CN202310594966.1A
Other languages
Chinese (zh)
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.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202310594966.1A priority Critical patent/CN116566834A/en
Publication of CN116566834A publication Critical patent/CN116566834A/en
Pending legal-status Critical Current

Links

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/12Discovery or management of network topologies
    • 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/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

The application provides a data transmission path determining method and a related device, and relates to the field of financial science and technology or other related fields. In the method, a control node can acquire data volume and network topology information of data to be transmitted, determine T time slots based on the data volume and the network topology information of the data to be transmitted, acquire packet loss conditions corresponding to each time slot in the T time slots, wherein the packet loss conditions corresponding to each time slot comprise average packet loss rates of each transmission node and each link in each time slot, and finally select a path with the lowest average packet loss rate from a plurality of transmission paths as a target path. The method improves the reliability of data transmission and meets the end-to-end time delay requirement.

Description

Method for determining data transmission path and related device
Technical Field
The present disclosure relates to the field of financial science and technology, and in particular, to a method and an apparatus for determining a data transmission path.
Background
In the financial industry, network systems typically include a plurality of transmission nodes and a control node that is required to select all or part of the transmission nodes from the plurality of transmission nodes to effect end-to-end transmission of data.
Currently, the control node may make the selection of the transmission node based on an open shortest path first (open shortest path first, OSPF) routing protocol. In the method, the control node can acquire the network topology information and select the route with the minimum hop count for data transmission based on the network topology information.
However, when this method is used for data transmission, there is a problem that the system reliability is low. For example, the amount of data transmitted in some links may exceed the available bandwidth, resulting in a large data transmission delay and even many data transmission failures or losses.
Disclosure of Invention
The application provides a method and a related device for determining a data transmission path, which are used for solving the problem of low system reliability in the prior art.
In a first aspect, the present application provides a method for determining a data transmission path, including: acquiring the data quantity of data to be transmitted; acquiring network topology information, wherein the network topology information indicates a source node, a destination node, a plurality of links between the source node and the destination node, a plurality of bandwidths and a plurality of time delays, the bandwidths are in one-to-one correspondence with the links, the time delays are in one-to-one correspondence with the links, each bandwidth in the bandwidths is an average bandwidth of the corresponding link, and each time delay in the time delays is a propagation delay of the corresponding link; determining T time slots based on the data volume and the network topology information, wherein each time slot in the T time slots comprises a plurality of time-slotted transmission nodes and a plurality of time-slotted links, the time-slotted transmission nodes are transmission nodes obtained by time-slotted processing of the transmission nodes, the time-slotted links are transmission links obtained by time-slotted processing of the transmission links, and T is a positive integer; acquiring packet loss information corresponding to each time slot in the T time slots, wherein the packet loss information corresponding to each time slot comprises average packet loss rate of each time slot transmission node in the plurality of time slot transmission nodes and each time slot link in the plurality of time slot links; and determining a target path based on packet loss information corresponding to each time slot in the T time slots, wherein the sum of average packet loss rates of the time-slotted transmission nodes and the time-slotted links in the target path is the lowest.
In the method, the average packet loss rate of the target path is the lowest, so that the data packet loss amount is the least when the data transmission is carried out based on the target path, and the reliability of the data transmission is improved. In addition, each time slot in the T time slots can transmit a part of data, so that the situation that data congestion occurs when the data to be transmitted are transmitted simultaneously is avoided, and the requirement of end-to-end time delay is met.
In some possible implementations, the determining T slots based on the data volume and the network topology information includes: acquiring first parameter information, wherein the first parameter information comprises an end-to-end time delay upper bound; determining a first bandwidth from the bandwidths, wherein the average bandwidth of a link corresponding to the first bandwidth is smaller than the average bandwidth of links corresponding to other bandwidths, and the other bandwidths are any one bandwidth except the first bandwidth in the bandwidths; determining a first time delay from the plurality of time delays, wherein the propagation time delay of a link corresponding to the first time delay is larger than the propagation time delay of links corresponding to other time delays, and the other time delays are any time delay except the first time delay in the plurality of time delays; determining a time slot granularity based on the data amount, the first bandwidth and the first time delay, wherein the time slot granularity is a corresponding time delay upper bound of each time slot transmission link in each time slot; the T slots are determined based on the end-to-end delay upper bound and the slot granularity.
In the method, T time slots are determined based on the end-to-end time delay upper bound required by the network system, so that the time delay of data transmission based on the T time slots can meet the end-to-end time delay upper bound requirement.
In some possible implementations, the slot granularity is equal to a maximum value of a first value and a second value, where the first value is equal to a ratio of the data amount to an average bandwidth of a link corresponding to the first bandwidth, and the second value is equal to a propagation delay of the link corresponding to the first delay.
In some possible implementations, the T is equal to a third value that is a minimum integer that is not lower than a ratio of the end-to-end delay upper bound to the slot granularity.
In some possible implementations, the first parameter information further includes a start transmission time;
the method further comprises the steps of: and determining a target transmission period based on the starting transmission time and the end-to-end time delay upper bound, wherein the target transmission period comprises T periods, the T periods are in one-to-one correspondence with the T time slots, and each period in the T periods is a transmission period of the time slot corresponding to each period.
In the method, each time slot has a corresponding transmission period, the transmission period corresponding to each time slot is distinguished, so that data is required to be completed in the transmission period corresponding to any time slot when being transmitted in the time slot, the situation that data is jammed when a plurality of time slots are transmitted simultaneously is avoided, and the time delay requirement of each time slot is favorably met.
In some possible implementations, the determining the target path based on the packet loss information corresponding to each of the T time slots includes: constructing a first time expansion graph according to packet loss information corresponding to each time slot in the T time slots, wherein the first time expansion graph comprises the following information: the average packet loss rate of the plurality of slotted transmission nodes and the plurality of slotted links in each time slot, and the plurality of slotted transmission nodes and the plurality of slotted links in each time slot; adding a virtual source node and a virtual destination node in the first time expansion graph to obtain a second time expansion graph, wherein the second time expansion graph contains the following information: the multiple time slot transmission nodes and multiple time slot links of each time slot, the virtual source node and the virtual destination node, the average packet loss rate of each time slot transmission node and each time slot link, the average packet loss rate of T virtual transmission links and T virtual receiving links, wherein the T virtual transmission links comprise links from the virtual source node to the source node of each time slot in the T time slots, and the T virtual receiving links comprise links from the destination node of each time slot in the T time slots to the virtual destination node; and determining the target path based on the second time expansion graph and a first algorithm.
An example of the first time expansion graph may be shown in fig. 4, where a source node in the first time expansion graph includes source nodes corresponding to T time slots, and a destination node in the first time expansion graph also includes destination nodes corresponding to T time slots.
Accordingly, one example of the second time expansion graph may be as shown in fig. 5. The second time expansion graph is added with a virtual source node and a virtual destination node on the basis of the first time expansion graph, and the virtual source node and the virtual destination node can be used as unique source nodes and destination nodes when path calculation is carried out.
In the method, in the second time expansion graph, the average packet loss rates of the T virtual sending links and the T virtual receiving links are all 0, so that the average packet loss rate of the route calculated based on the virtual source node and the virtual destination node is consistent with the actual average packet loss rate.
In some possible implementations, the first algorithm includes a disco tesla dijkstra algorithm.
In some possible implementations, the packet loss information corresponding to each time slot includes reliability weights of each time slot transmission node and each time slot link in each time slot, where the reliability weights of each time slot transmission node in each time slot are respectively generated based on average packet loss rates of each time slot transmission node in each time slot, and the reliability weights of each time slot link in each time slot are respectively generated based on average packet loss rates of each time slot link in each time slot.
In the method, in the second time expansion graph, the reliability weights of the T virtual sending links and the T virtual receiving links are all 0, so that the reliability weight of the route calculated based on the virtual source node and the virtual destination node is consistent with the actual reliability weight.
In a second aspect, the present application provides a data transmission path determining apparatus, which has a function of implementing the behavior in the method example of the first aspect. The functions may be implemented by hardware, or may be implemented by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the functions described above.
In one possible design, the apparatus includes: an acquisition module and a processing module.
The acquisition module may be configured to acquire a data amount of the data to be transmitted.
The acquisition module may be further configured to acquire network topology information, where the network topology information indicates a source node, a destination node, a plurality of links between the source node and the destination node, a plurality of bandwidths, and a plurality of delays, where the plurality of bandwidths are in one-to-one correspondence with the plurality of links, the plurality of delays are in one-to-one correspondence with the plurality of links, each bandwidth in the plurality of bandwidths is an average bandwidth of a corresponding link, and each delay in the plurality of delays is a propagation delay of the corresponding link.
The processing module may be configured to determine T time slots based on the data amount and the network topology information, where each time slot in the T time slots includes a plurality of time-slotted transmission nodes and a plurality of time-slotted links, the time-slotted transmission nodes are transmission nodes obtained by time-slot processing of the transmission nodes, the time-slotted links are transmission links obtained by time-slot processing of the transmission links, and T is a positive integer.
The acquiring module may be further configured to acquire packet loss information corresponding to each of the T time slots, where the packet loss information corresponding to each time slot includes an average packet loss rate of each transmission node and each link in each time slot.
The processing module may be further configured to determine a target path based on packet loss information corresponding to each of the T time slots, where a sum of average packet loss rates of the transmission node and the link in the target path is the lowest.
In some possible implementations, the obtaining module may be further configured to obtain first parameter information, where the first parameter information includes an end-to-end delay upper bound.
The processing module may be further configured to determine a first bandwidth from the plurality of bandwidths, where an average bandwidth of the link corresponding to the first bandwidth is smaller than an average bandwidth of the links corresponding to other bandwidths, and the other bandwidths are any bandwidths other than the first bandwidth in the plurality of bandwidths.
The processing module may be further configured to determine a first delay from the plurality of delays, where a propagation delay of a link corresponding to the first delay is greater than a propagation delay of a link corresponding to another delay, where the other delay is any delay of the plurality of delays other than the first delay.
The processing module may be further configured to determine a slot granularity based on the data amount, the first bandwidth, and the first latency, where the slot granularity is a corresponding upper bound of latency for each slotted transmission link in each slot.
The processing module may be further configured to determine the T slots based on the end-to-end delay upper bound and the slot granularity.
In some possible implementations, the slot granularity is equal to a maximum value of a first value and a second value, where the first value is equal to a ratio of the data amount to an average bandwidth of a link corresponding to the first bandwidth, and the second value is equal to a propagation delay of the link corresponding to the first delay.
In some possible implementations, the T is equal to a third value that is a minimum integer that is not lower than a ratio of the end-to-end delay upper bound to the slot granularity.
In some possible implementations, the first parameter information further includes a start transmission time.
The processing module may be further configured to determine a target transmission period based on the starting transmission time and the end-to-end delay upper bound, where the target transmission period includes T periods, the T periods are in one-to-one correspondence with the T time slots, and each period in the T periods is a transmission period of a time slot corresponding to each period.
In some possible implementations, the processing module is configured to, when determining the target path based on the packet loss information corresponding to each of the T timeslots, specifically:
constructing a first time expansion graph according to packet loss information corresponding to each time slot in the T time slots, wherein the first time expansion graph comprises the following information: the average packet loss rate of the plurality of slotted transmission nodes and the plurality of slotted links in each time slot, and the plurality of slotted transmission nodes and the plurality of slotted links in each time slot; adding a virtual source node and a virtual destination node in the first time expansion graph to obtain a second time expansion graph, wherein the second time expansion graph contains the following information: the multiple time slot transmission nodes and multiple time slot links of each time slot, the virtual source node and the virtual destination node, the average packet loss rate of each time slot transmission node and each time slot link, the average packet loss rate of T virtual transmission links and T virtual receiving links, wherein the T virtual transmission links comprise links from the virtual source node to the source node of each time slot in the T time slots, and the T virtual receiving links comprise links from the destination node of each time slot in the T time slots to the virtual destination node; and determining the target path based on the second time expansion graph and a first algorithm.
In some possible implementations, the first algorithm includes a disco tesla dijkstra algorithm.
In some possible implementations, the packet loss information corresponding to each time slot includes reliability weights of each time slot transmission node and each time slot link in each time slot, where the reliability weights of each time slot transmission node in each time slot are respectively generated based on average packet loss rates of each time slot transmission node in each time slot, and the reliability weights of each time slot link in each time slot are respectively generated based on average packet loss rates of each time slot link in each time slot.
In a third aspect, the present application provides a data transmission path determining apparatus. The apparatus includes a communication interface and a processor, and optionally, a memory. Wherein the memory is configured to store a computer program or instructions, the processor being coupled to the memory and the communication interface, which when executed by the processor causes the apparatus to perform the method performed by the first aspect described above.
Alternatively, the apparatus may be applied to an electronic device.
In a fourth aspect, the present application provides a computer readable storage medium storing program code for controlling an apparatus to execute, the program code comprising instructions for implementing the method in the first aspect.
In a fifth aspect, the present application provides a computer program product comprising instructions which, when run on a determining device of a data transmission path, cause the device to implement the method in the first aspect.
It will be appreciated that the effects obtainable in the second to fifth aspects may be referred to in the description of the first aspect and are not described here in detail.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the application and together with the description, serve to explain the principles of the application.
FIG. 1 is a schematic diagram of a network system architecture applicable to the present application;
fig. 2 is a flow chart of a method for determining a data transmission path according to an embodiment of the present application;
fig. 3 is a schematic diagram of a network topology according to an embodiment of the present application;
FIG. 4 is a first time expansion pictorial intent provided by one embodiment of the present application;
FIG. 5 is a second time expansion pictorial intent provided by one embodiment of the present application;
fig. 6 is a flowchart of a method for determining a target path based on a second time expansion graph and a first algorithm according to an embodiment of the present application;
FIG. 7 is a first time expansion pictorial intent provided by another embodiment of the present application;
FIG. 8 is a second time expansion pictorial intent provided by another embodiment of the present application;
FIG. 9 is a schematic view of a device according to an embodiment of the present disclosure;
fig. 10 is a schematic view of an apparatus structure according to another embodiment of the present application.
Specific embodiments thereof have been shown by way of example in the drawings and will herein be described in more detail. These drawings and the written description are not intended to limit the scope of the inventive concepts in any way, but to illustrate the concepts of the present application to those skilled in the art by reference to specific embodiments.
Detailed Description
Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, the same numbers in different drawings refer to the same or similar elements, unless otherwise indicated. The implementations described in the following exemplary examples are not representative of all implementations consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with some aspects of the present application as detailed in the accompanying claims.
It should be noted that, the user information (including but not limited to user equipment information, user personal information, etc.) and the data (including but not limited to data for analysis, stored data, presented data, etc.) referred to in the present application are information and data authorized by the user or fully authorized by each party, and the collection, use and processing of the related data need to comply with the related laws and regulations and standards, and provide corresponding operation entries for the user to select authorization or rejection.
It should be noted that the method for determining a data transmission path and the related device of the present application may be used in the financial field, and may also be used in any field other than finance, and the application field of the method for determining a data transmission path and the related device of the present application is not limited.
The method and the related device for determining the data transmission path can be applied to a centralized or distributed networking architecture. Under a centralized architecture, a network system may include a control node and a plurality of transmission nodes, where the control node may uniformly plan routes for all traffic in the network. Under a distributed architecture, a control node may not be included in the network system, and each of the plurality of transmission nodes may route a respective service. The following description will take a centralized architecture as an example.
Fig. 1 is a schematic diagram of a network system architecture applicable to the present application. As shown in fig. 1, the network system architecture includes a control node and m transmission nodes, where m is a positive integer. The control node may communicate with any one of the m transmission nodes.
In the system, each of the m transmission nodes may be an electronic device capable of transmitting data, such as a computer, a server, or the like.
The m transmission nodes include a source node and a destination node. The source node may be a node that receives a service request from a user, and after receiving the service request, the source node may send the service request to the destination node, where the destination node may memorize that a corresponding service is provided based on the service request.
Alternatively, the service requests received by the source node may include one or more, and the source node may receive one or more service requests within a time period.
In some embodiments, the service request may also be referred to as service data, transaction data, or transmission data, which is not limited in this application.
As an example, it is assumed that the network system includes a node a, a node B and a node C, where when the node a is to send data to the node B, the node a is marked as a source node of the data to be transmitted, and the node B is marked as a destination node of the data to be transmitted, the node a may directly send the data to be transmitted to the node B, or may indirectly send the data to be transmitted to the node B through the node C when transmission resources between the node a and the node B are relatively tight, and at this time, the node C plays a role of relaying, which is equivalent to implementing data transmission by forwarding the data to be transmitted.
The control node may be configured to determine a transmission path of the data and control the m transmission nodes to transmit the data based on the transmission path. Specifically, the control node may acquire network topology information including all transmission paths from the source node to the destination node, select an appropriate transmission path from all transmission paths as a target transmission path, and then control the m transmission nodes to transmit data based on the target transmission path.
Alternatively, the control node may acquire the network topology information based on m transmission nodes. As an example, each of the m transmission nodes may store respective path information and transmit the path information to the control node, and accordingly, the control node may determine network topology information based on the path information transmitted by each transmission node. Wherein the path information includes a transmission path of each transmission node.
As an example, assume that node a is a source node of data to be transmitted, and node B is a destination node of data to be transmitted, and the transmission path between node a and node B includes two, one is: node a→node B, the other is: node a→node c→node B. After determining the two transmission paths, the control node selects one transmission path for transmission.
In this embodiment, there may be multiple transmission paths between the source node and the destination node, and each of the multiple transmission paths may include one or more links. As an example, assuming that a transmission path is node a→node c→node B, two links are included in the transmission path: the link from node a to node C and the link from node C to node B.
In this embodiment, the network topology information may also indicate a plurality of bandwidths and a plurality of delays. Wherein a plurality of bandwidths are in one-to-one correspondence with a plurality of links in the system, each of the plurality of bandwidths being operable to indicate an average bandwidth of the corresponding link. Multiple delays may also be in one-to-one correspondence with multiple links in the system, each of which may be used to indicate a propagation delay for the corresponding link.
In this embodiment, after the network configuration is completed, the bandwidth resources of each link are known and maintained by the control node. The control node may schedule end-to-end routing for each service and reserve the required transmission bandwidth, updating the average bandwidth available to each edge.
In this embodiment, neighbor discovery signaling (i.e. Hello packet) and link state advertisement (link-state advertisement, LSA) may be interacted between the transmission nodes, so as to obtain node adjacency information and link propagation delay information, and generate a basic forwarding table. Meanwhile, each transmission node can transmit the acquired information to the control node, and the control node maintains the topology of the whole network and the propagation delay information of each link.
Currently, the control node may select a transmission path based on the OSPF protocol. In the method, the control node can select the route with the minimum hop count for transmission based on the network topology information.
However, when this method is used for data transmission, there is a problem that the system reliability is low. For example, the amount of data to be transmitted in some links may exceed the available bandwidth, resulting in a large data transmission delay, and even a large amount of data transmission failure or loss.
The method for determining the data transmission path aims at solving the problem of low system reliability in the prior art.
In the technical scheme of the application, the control node can acquire network information, wherein the network information comprises network topology information, data volume of data to be transmitted, end-to-end time delay upper bound and the like, then determine T time slots based on the network information, acquire packet loss conditions corresponding to each time slot in the T time slots, wherein the packet loss conditions corresponding to each time slot comprise average packet loss rates of each transmission node and each link in each time slot, and finally select a path with the lowest average packet loss rate from a plurality of transmission paths as a destination transmission path. The average packet loss rate of the target path is minimum, so that the number of data packet loss can be reduced, and the reliability of data transmission can be improved. In addition, each time slot in the T time slots can transmit a part of data, so that the situation that data congestion occurs when the data to be transmitted are transmitted simultaneously is avoided, and the requirement of end-to-end time delay is met.
The following describes the technical solution of the present application and how the technical solution of the present application solves the above technical problems in detail with specific embodiments. The following embodiments may be combined with each other, and the same or similar concepts or processes may not be described in detail in some embodiments. Embodiments of the present application will be described below with reference to the accompanying drawings.
Fig. 2 is a flowchart of a method for determining a data transmission path according to an embodiment of the present application. As shown in fig. 2, the method may include S201 to S205.
In this embodiment, the method may be applied to the control node shown in fig. 1. For example, the method may be implemented by a control node, or may be implemented by a chip in the control node, or may be implemented by an application or service in the control node.
S201, acquiring the data quantity of data to be transmitted.
In some possible implementations, the amount of data to be transmitted may be obtained based on the source node.
For example, a user may input a service request at a source node, the source node determining a data amount of data to be transmitted based on the service request input by the user, and transmitting indication information to a control node, the indication information being usable to indicate the data amount of data to be transmitted.
In this embodiment, the data size of the data to be transmitted may be M, where M is a positive integer.
S202, obtaining network topology information, wherein the network topology information indicates a source node, a destination node, a plurality of links between the source node and the destination node, a plurality of bandwidths and a plurality of time delays, the plurality of bandwidths are in one-to-one correspondence with the plurality of links, the plurality of time delays are in one-to-one correspondence with the plurality of links, each bandwidth in the plurality of bandwidths is an average bandwidth of the corresponding links, and each time delay in the plurality of time delays is a propagation delay of the corresponding links.
In this embodiment, the method for obtaining the network topology information may refer to the prior art, and will not be described herein.
In some implementations, the network topology information can be characterized based on a network topology map.
Fig. 3 is a schematic diagram of a network topology according to an embodiment of the present application. In this example, five transmission nodes are included in the network system: s, A, B, C, D, S is the source node and D is the destination node.
The links of the network system include: s→ A, S → C, A → B, A → C, A → D, B → D, C →D.
Each link has a corresponding bandwidth and a delay, wherein the bandwidth is an average bandwidth of the link, and the delay is an average delay of the link.
The bandwidth in the network system includes: w (W) S,A 、W S,C 、W A,B 、W A,C 、W A,D 、W B,D 、W C,D Wherein W is S,A Represents the average bandwidth of the S-A link, W S,C Represents the average bandwidth of the S-C link, W A,B Represents the average bandwidth, W, of the A-B link A,C Represents the average bandwidth, W, of the A-C link A,D Represents the average bandwidth, W, of the A-D link B,D Represents the average bandwidth, W, of the link B-D C,D Representing the average bandwidth of the c→d link.
The time delay in the network system includes: l (L) S,A 、L S,C 、L A,B 、L A,C 、L A,D 、L B,D 、L C,D Wherein L is S,A Representing the average time delay of the S-A link, L S,C Representing the average time delay of the S-C link, L A,B Representing the average time delay of the link A-B, L A,C Representing the average time delay of the link A-C, L A,D Representing the average time delay of the link A-D, L B,D Representing the average delay of the link B-D, L C,D Representing the average delay of the C-D link.
S203, determining T time slots based on the data volume and the network topology information, wherein each time slot in the T time slots comprises a plurality of time-slotted transmission nodes and a plurality of time-slotted links, the time-slotted transmission nodes are transmission nodes obtained by time-slotted processing of the transmission nodes, the time-slotted links are transmission links obtained by time-slotted processing of the transmission links, and T is a positive integer.
In this embodiment, the size (or granularity) of each of the T time slots is τ, and the T time slots may be respectively: τ 1 、τ 2 、…、τ T
In this embodiment, each transmission node in the network system may include T slotted transmission nodes, where the T slotted transmission nodes correspond to T slots one by one, and the T slotted transmission nodes of each transmission node may be used to perform all or part of services of the transmission node.
As an example, the transmission node S may include T slotted transmission nodes: s is S 1 、S 2 、…、S T . Wherein S is 1 Indicating that the transmitting node S is in slot τ 1 Corresponding time slot transmission node S 2 Indicating that the transmitting node S is in slot τ 2 Corresponding time-slotted transmission nodes, and so on, S T Indicating that the transmitting node S is in slot τ T The corresponding time slot transmission node.
In some possible implementations, a method of determining T slots based on data volume and network topology information may include: acquiring first parameter information, wherein the first parameter information comprises an end-to-end time delay upper bound; determining a first bandwidth from the bandwidths, wherein the average bandwidth of the links corresponding to the first bandwidth is smaller than the average bandwidth of the links corresponding to other bandwidths, and the other bandwidths are any bandwidth except the first bandwidth in the bandwidths; determining a first time delay from the plurality of time delays, wherein the propagation time delay of a link corresponding to the first time delay is larger than the propagation time delay of links corresponding to other time delays, and the other time delays are any time delay except the first time delay in the plurality of time delays; determining a time slot granularity based on the data volume of the data to be transmitted, the first bandwidth and the first time delay, wherein the time slot granularity is the corresponding time delay upper bound of each time slot transmission link in each time slot; the T slots are determined based on an end-to-end delay upper bound and slot granularity.
Wherein the end-to-end delay is equal to the sum of all transmission delays, processing delays and queue delays on the path. In short, the end-to-end delay may be considered as the maximum delay that traffic originates and propagates from the source node to be allowed when received by the target node. Accordingly, the upper end-to-end delay bound is the maximum delay for data transmission from the source node to the target node.
Alternatively, the transmission bandwidth and the end-to-end delay upper bound may be pre-set in advance. For example, in some augmented reality (augmented reality, AR) or Virtual Reality (VR) services, it is required that the transmission bandwidth is not less than 40Mbps (megabits per second) and the end-to-end delay upper bound is not more than 20ms (milliseconds).
In this embodiment, the first bandwidth may be a bandwidth with a minimum link average bandwidth among the plurality of bandwidths. As an example, assume that the bandwidth includes: w (W) S,A 、W S,C 、W A,B 、W A,C 、W A,D 、W B,D 、W C,D If W S,A Is the smallest, then W S,A Is the first bandwidth.
The first delay may be a delay with a greatest propagation delay among the plurality of delays. As an example, assume that the delay includes: l (L) S,A 、L S,C 、L A,B 、L A,C 、L A,D 、L B,D 、L C,D If L S,A Maximum propagation delay of (1), L S,A Is the first delay.
In some possible implementations, the slot granularity may be determined based on equation (1):
τ=max{a,b} (1)
Wherein τ represents the granularity of the time slot, a represents the ratio of the data volume of the data to be transmitted to the average bandwidth of the link corresponding to the first bandwidth, b represents the propagation delay of the link corresponding to the first delay, and max { · } represents the maximum value.
As an example, assuming that the data amount of the data to be transmitted is M, the average bandwidth of the link corresponding to the first bandwidth is W min a=m/W min . Assume that the propagation delay of the link corresponding to the first delay is L max B=l max
In some possible implementations, the number of slots T may be determined based on equation (2):
wherein B represents the end-to-end delay upper bound, τ represents the slot granularity,representing a rounding down.
In other possible implementations, the number of slots T may also be determined based on equation (3):
wherein, the liquid crystal display device comprises a liquid crystal display device,representing an upward rounding.
Optionally, the first parameter information further includes a start transmission time. The control node may obtain the start transmission time based on the source node. For example, the source node may send indication information to the control node, where the indication information is used to indicate that the source node receives the service request at a first time, and the control node may use the first time as a transmission start time.
After the control node obtains the transmission start time, a target transmission period can be determined based on the transmission start time and the end-to-end delay upper bound, wherein the target transmission period refers to a time range from the transmission start time generated by the source node to the latest receiving time of the service received by the destination node.
In this embodiment, the target transmission period may include T periods, where the T periods may correspond to the T slots one by one, and each period of the T periods may be a transmission period of the corresponding slot.
For example, assuming that the starting transmission time is O and the end-to-end delay upper bound is B, the target transmission period may be determined based on equation (4):
H=[O,O+B) (4)
where H represents a target transmission period.
Accordingly, the period corresponding to each of the T time slots may be: τ k =[O+(k-1)·τ,O+k·τ),Wherein τ k Representing the kth slot.
In this method, each time slot has a corresponding transmission period. Therefore, the control node can control the time slot transmission node of each time slot to transmit data in the corresponding transmission time, which is beneficial to avoiding the condition of network congestion of each time slot and improving the reliability of the system.
S204, acquiring packet loss information corresponding to each time slot in the T time slots, wherein the packet loss information corresponding to each time slot comprises average packet loss rates of each time slot transmission node and each time slot link in each time slot.
In this embodiment, the packet loss information is used to indicate a packet loss situation, which may be characterized based on an average packet loss rate.
For each slotted transmission node, the slotted transmission node may count the following information: the number of the packets N1 entering the node in each time slot, the number of the packets N2 increased or the number of the packets N3 decreased in the node cache in each time slot, and the number of the packets N4 leaving the node in each time slot. After the time-slotted transmission node obtains the information, the information can be transmitted to the control node, and the control node can calculate the average packet loss rate of the time-slotted transmission node in each time slot based on the information:or->
For each slotted link, the upstream node of the slotted link may count the number of packets S1 leaving each slot via its output port and transmit this information to the control node. In addition, the downstream node of the slotted link may count the number of packets S2 entering through its ingress port in each slot and transmit this information to the control node. The control node may determine an average packet loss rate for each slotted link based on S1 and S2:
in this embodiment, for each slot, the average packet loss rate of each slotted link may be noted as: The average packet loss rate per slotted transmission node can be noted as: />
S205, determining a target path based on packet loss information corresponding to each time slot in the T time slots, wherein the sum of average packet loss rates of a transmission node and a link in the target path is the lowest.
Optionally, the method for determining the target path based on the packet loss information corresponding to each of the T time slots may include: constructing a first time expansion graph according to packet loss information corresponding to each time slot in the T time slots, wherein the first time expansion graph can contain the following information: an average packet loss rate for the plurality of slotted transmission nodes and the plurality of slotted links in each slot, each slotted transmission node and each slotted link in each slot; adding a virtual source node and a virtual destination node in the first time expansion graph to obtain a second time expansion graph, wherein the second time expansion graph contains the following information: the method comprises the steps of a plurality of time-slotted transmission nodes and a plurality of time-slotted links of each time slot, a virtual source node and a virtual destination node, an average packet loss rate of each time-slotted transmission node and each time-slotted link in each time slot, an average packet loss rate of T virtual transmission links and T virtual receiving links, wherein the T virtual transmission links comprise links from the virtual source node to the source node of each time slot in the T time slots, and the T virtual receiving links comprise links from the destination node of each time slot in the T time slots to the virtual destination node; a target path is determined based on the second time expansion graph and the first algorithm.
FIG. 4 is a first time expansion pictorial intent provided by one embodiment of the present application. In this example, each of the T time slots includes five slotted transmission nodes.
In this example, the first time slot includes five slotted transmission nodes: s is S 1 、A 1 、B 1 、C 1 And D 1 ,S 1 D, the first node of the first time slot 1 A destination node which is a first time slot; the second time slot includes five slotted transmission nodes: s is S 2 、A 2 、B 2 、C 2 And D 2 ,S 2 D, the first node of the first time slot 2 A destination node which is a first time slot; by analogy, the T-th slot includes five slotted transmission nodes: s is S T 、A T 、B T 、C T And D T ,S T D, the first node of the first time slot T Is the destination node of the first time slot.
In this example, for each slot, there may be multiple slotted links between the five slotted transmission nodes, each of the multiple slotted links having a respective corresponding average packet loss rate. In some embodiments, the slotted link may also be referred to as a transmission edge.
For example, in a first time slot, a slotted link between five slotted transmission nodes may include: s is S 1 →A 1 、S 1 →C 1 、A 1 →B 1 、A 1 →C 1 、A 1 →D 1 、B 1 →D 1 、C 1 →D 1 The average packet loss rates for these slotted links can be noted as:
in this example, one transmission node may include T slotted transmission nodes for each transmission node. The first T-1 of the T slotted transmission nodes all have a corresponding average packet loss rate.
For example, taking the transmission node S as an example, the transmission node S may include T time-slotted transmission nodes: s is S 1 、S 2 、…、S T . The average packet loss rates corresponding to the first T-1 transmission nodes may be respectively:
in addition, a storage link may exist between every adjacent two of the T slotted transmission nodes. In some embodiments, the storage link may also be referred to as a storage edge.
For example, taking the transmission node S as an example, the storage link between the T time-slotted transmission nodes of the transmission node S may include: s is S 1 →S 2 、S 2 →S 3 、…、S T-1 →S T
FIG. 5 is a second time expansion pictorial intent provided by one embodiment of the present application. In the example, the second time expansion graph adds virtual source nodes based on the first time expansion graphAnd virtual destination node->Virtual Source node->Transmission link to source node of each time slot and each destination node to virtual destination node->Is provided).
Wherein the virtual source nodeThe transmission link to the source node of each time slot may also be referred to as a virtual transmit link, and the average packet loss rate for each virtual transmit link may be noted as 0. Each destination node is +.>The transmission links of (a) may also be referred to as virtual receiving links, and the average packet loss rate of each virtual receiving link may also be denoted as 0.
In this embodiment, after the control node constructs the second time expansion map, the target path may be determined based on the second time expansion map and the first algorithm.
As an example, the first algorithm may include dijkstra's algorithm.
It will be appreciated that the dijkstra algorithm is only one example of a first algorithm and does not limit the scope of the first algorithm.
Alternatively, a method flow diagram for determining the target path based on the second time expansion map and the first algorithm may be as shown in fig. 6.
In S601, a first node is determined from a second time expansion graph, the first node being any one of a plurality of slotted transmission nodes in the second time expansion graph, the first node being located in a first set.
In the method, all nodes in the second time expansion graph may be distributed in the first set and the second set. Wherein the nodes in the first set and the nodes in the second set are different, and the total number of nodes in the first set and the second set is equal to the number of nodes in the second time expansion graph.
The first set may include at least one node, and the second set may include at least one node.
Upon initialization, the virtual source node may be determined to be the first node. In this case, the first set includes virtual source nodes, and the second set includes all nodes except the virtual source nodes.
With reference to fig. 5, assuming that the first set may be denoted as Z1 and the second set may be denoted as Z2, thenWherein V represents all nodes in the second time expansion graph, < >>Represents V is divided by->All nodes except the node.
In S602, a second node is determined from the second set, a first transmission link exists between the second node and the first node, and an average packet loss rate of the first transmission link is lower than an average packet loss rate of transmission links between the first node and other nodes, which are any one of the nodes in the second set except the second node.
In this embodiment, the number of the second nodes may be at least one.
In the method, the method for determining the second node from the second set may include: the target node of the transmission link with the first node is determined from the second set, and then the average packet loss rate of each of the transmission links is compared, and the target node of the transmission link with the lowest average packet loss rate is determined as the second node.
In connection with fig. 5, as an example, assume that a first node is a source nodeDue to the fact that in the second set there is +.>The target node with the transmission link comprises S 1 、S 2 、…、S T And source node->The average packet loss rate with each target node is 0, any one of the plurality of target nodes may be determined to be the second node.
As another example, assume that the first node is S 1 The target nodes in the second set and the existing transmission links comprise S 2 、A 1 And C 1 And S is connected with 1 The associated transmission link includes three: s is S 1 →S 2 、S 1 →A 1 、S 1 →C 1 The average packet loss rates corresponding to the three transmission links are respectively:and->If->For the smallest of these three average packet loss rates, then A will be 1 And determining as a second node. />
In S603, a first average packet loss rate is calculated, the first average packet loss rate comprising an average packet loss rate of the first node through a path between the second node to the other node.
In this embodiment, the number of the first average packet loss rates may be at least one.
With reference to FIG. 5, assume that the first node is S 1 The second node is A 1 The other nodes are D 1 The path between the first node to the other node through the second node comprises: (1) s is S 1 →A 1 →D 1 ;②S 1 →A 1 →B 1 →D 1 ;③S 1 →A 1 →C 1 →D 1 . The first average packet loss rate includes the average packet loss rates of the three paths.
For any one path, the average packet loss rate for that path is equal to the sum of the average packet loss rates for each link in that path.
In S604, a second average packet loss rate is calculated, the second average packet loss rate comprising an average packet loss rate of links to other nodes when the first node does not pass the second node.
In this embodiment, the number of second packet loss rates may be at least one.
With reference to FIG. 5, assume that the first node is S 1 The second node is A 1 The other nodes are D 1 The first node not passing through the path between the second node to the other node includes: s is S 1 →C 1 →D 1 The second average packet loss rate includes an average packet loss rate for the path that is equal to the sum of the average packet loss rates for each link in the path.
In S605, it is determined whether the first average packet loss rate is less than or equal to the second average packet loss rate. If yes, S606 is executed, otherwise S607 is executed.
Alternatively, when the first average packet loss rate includes one and the second average packet loss rate includes a plurality, then it is determined whether the first average packet loss rate is less than or equal to the second average packet loss rate, which may be understood as determining whether the first average packet loss rate is less than or equal to any one of the second average packet loss rates.
Alternatively, when the first average packet loss rate includes a plurality of and the second average packet loss rate includes one, then determining whether the first average packet loss rate is less than or equal to the second average packet loss rate may be understood as determining whether the first average packet loss rate has a first average packet loss rate that is less than or equal to the second average packet loss rate.
In S606, the second node is updated into the first set and updated to the first node.
In this embodiment, the second node is updated into the first set, which is understood to be removed from the second set and added to the first set.
In this embodiment, the sum of the average packet loss rates in the first set is equal to the sum of the average packet loss rate between the virtual source node and the first node and the average packet loss rate between the first node and the second node.
In S607, a third node is determined from the second set, a transmission link exists between the third node and the first node, and an average packet loss rate of links of the first node to other nodes through the third node is lowest.
With reference to FIG. 5, assume that the first node is S 1 The second node is A 1 The other nodes are D 1 Suppose S 1 Through A 1 To D 1 The average packet loss rate of the paths between are greater than S 1 Through C 1 To D 1 Average packet loss rate of paths between, C can be calculated 1 And determining as a third node.
In some embodiments, the third node may be the same node as the other nodes.
In S608, the third node is updated into the first set and updated to the first node.
In this embodiment, the third node is updated into the first set, which is understood to be removed from the second set and added to the first set.
In this embodiment, the sum of the average packet loss rates in the first set is equal to the sum of the average packet loss rate between the virtual source node and the first node and the average packet loss rate between the first node and the third node.
In S609, it is determined whether the virtual destination node is included in the first set. If yes, executing S610; otherwise, S601 is performed.
In this embodiment, when the first set includes the virtual destination node, it means that the transmission node in the first set may complete the end-to-end transmission.
In S610, a target path is determined based on nodes in the first set.
In this embodiment, since the nodes in the first set are all obtained based on the average packet loss rate of the links, the upstream node and the downstream node corresponding to each node may be obtained based on each node in the first set, and then the target path may be determined based on the upstream node and the downstream node of each node.
With reference to FIG. 5, assume S 1 And D 1 The link determined between them is S 1 →A 1 →D 1 Then A 1 Is S 1 Downstream node of S 1 Is A 1 Upstream node D of (1) 1 Is A 1 Downstream node of A 1 For D 1 Upstream node of (a).
In some possible implementations, the packet loss condition may also be characterized by a reliability weight. Correspondingly, the packet loss information corresponding to each time slot comprises the reliability weight of each time slot transmission node and each time slot link in each time slot.
Wherein the reliability weight of each slotted transmission node may be generated based on an average packet loss rate of each slotted transmission node, respectively, and the reliability weight of each slotted link may be generated based on an average packet loss rate of each slotted link, respectively.
As an example, for each slot, assume that the reliability weight of each slotted link can be noted as: The reliability weight of each time slot link has a value range of [0, ]. Wherein the smaller the reliability weight of each slotted link, the higher the probability of successful transmission of traffic packets along the slotted link.
Alternatively, the reliability weight for each slotted link may be generated based on the average packet loss rate for each slotted link. For example, the number of the cells to be processed,
for example, in a first time slot, a slotted link between five slotted transmission nodes may include: s is S 1 →A 1 、S 1 →C 1 、A 1 →B 1 、A 1 →C 1 、A 1 →D 1 、B 1 →D 1 、C 1 →D 1 The reliability weights corresponding to these slotted links can be respectively noted as:
as an example, for each time slot, assume that the reliability weight of each slotted transmission node can be noted as:the reliability weight of each time slot transmission node has a value range of [0, ]. The smaller the reliability weight of each time-slotted transmission node, the higher the probability of successful buffering of traffic along the time-slotted transmission node.
Alternatively, the reliability weight of each slotted transmission node may also be generated based on the average packet loss rate of each slotted transmission node. For example, the number of the cells to be processed,
for example, taking the transmission node S as an example, the transmission node S may include T time-slotted transmission nodes: s is S 1 、S 2 、…、S T . The reliability weights corresponding to the first T-1 transmission nodes may be respectively:
accordingly, the first time expansion map may be as shown in fig. 7, and the second time expansion map may be as shown in fig. 8.
In the technical scheme of the application, after the control node determines the target path, the control node may send first information to each transmission node, where the first information is used to indicate the target path. In this way, each transmission node can transmit data based on the transmission path to fulfill traffic transmission requirements.
In the technical scheme, the transmission node in the network system meets the end-to-end delay requirement, and meanwhile, the end-to-end packet loss rate is the lowest, so that time-determined and high-reliability transmission service can be provided for the time-sensitive novel service.
Fig. 9 is a schematic diagram of an apparatus according to an embodiment of the present application. As shown in fig. 9, the apparatus 900 includes an acquisition module 901 and a processing module 902.
As an example, apparatus 900 may be used to implement the method of the embodiment shown in fig. 2. Among them, the acquisition module 901 may be used to perform S201, S202, and S204, and the processing module 902 may be used to perform S203 and S205.
As another example, apparatus 900 may also be used to implement the method of the embodiment shown in FIG. 6. Among them, the processing module 902 may be used to perform S601 to S610.
Fig. 10 is a schematic view of an apparatus structure according to another embodiment of the present application. As shown in fig. 10, an apparatus 1000 may include a processor 1001 and an interface circuit 1002. The processor 1001 and the interface circuit 1002 are coupled to each other. It is understood that interface circuit 1002 may be a transceiver or an input-output interface. Optionally, the apparatus 1000 may further comprise a memory 1003 for storing instructions executed by the processor 1001 or for storing input data required by the processor 1001 to execute instructions or for storing data generated after the processor 1001 executes instructions.
As one example, the processor 1001 may be configured to implement the functionality of the processing module 902 described above. The interface circuit 1002 may be used to implement the functionality of the acquisition module 901 described above.
The apparatus 1000 may be an electronic device or a chip applied to the electronic device.
It should be noted that, it should be understood that the division of the modules of the above apparatus is merely a division of a logic function, and may be fully or partially integrated into a physical entity or may be physically separated. And these modules may all be implemented in software in the form of calls by the processing element; or can be realized in hardware; the method can also be realized in a form of calling software by a processing element, and the method can be realized in a form of hardware by a part of modules. The function of the above determination module may be implemented as a processing element that is set up separately, or may be integrated into a chip of the above apparatus, or may be stored in a memory of the above apparatus in the form of program codes, and may be called and executed by a processing element of the above apparatus. The implementation of the other modules is similar. In addition, all or part of the modules can be integrated together or can be independently implemented. The processing element described herein may be an integrated circuit having signal processing capabilities. In implementation, each step of the above method or each module above may be implemented by an integrated logic circuit of hardware in a processor element or an instruction in a software form.
For example, the modules above may be one or more integrated circuits configured to implement the methods above, such as: one or more specific integrated circuits (application specific integrated circuit, ASIC), or one or more microprocessors (digital signal processor, DSP), or one or more field programmable gate arrays (field programmable gate array, FPGA), or the like. For another example, when a module above is implemented in the form of a processing element scheduler code, the processing element may be a general purpose processor, such as a central processing unit (centralprocessing unit, CPU) or other processor that may invoke the program code. For another example, the modules may be integrated together and implemented in the form of a system-on-a-chip (SOC).
In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, produces a flow or function in accordance with embodiments of the present application, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another, for example, by wired (e.g., coaxial cable, optical fiber, digital Subscriber Line (DSL)), or wireless (e.g., infrared, wireless, microwave, etc.). The computer readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that contains an integration of one or more available media. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid State Disk (SSD)), etc.
The present application also provides an electronic apparatus including: a processor, a memory and a computer program; wherein a computer program is stored in a memory and configured to be executed by a processor, the computer program comprising instructions for performing a method of determining a data transmission path as in any of the previous embodiments of the application.
The present application also provides a computer-readable storage medium storing a computer program that causes a server to execute instructions of a method of determining a data transmission path as in any one of the foregoing embodiments of the present application.
The embodiment of the application also provides a chip for running the instructions, and the chip is used for executing the method for determining the data transmission path executed by the electronic equipment in any of the previous embodiments of the application.
The present application also provides a program product, which includes a computer program stored in a storage medium, from which at least one processor can read, and when executed by the at least one processor, can implement a method for determining a data transmission path executed by an electronic device as in any of the foregoing embodiments of the present application.
Those of ordinary skill in the art will appreciate that: all or part of the steps for implementing the method embodiments described above may be performed by hardware associated with program instructions. The foregoing program may be stored in a computer readable storage medium. The program, when executed, performs steps including the method embodiments described above; and the aforementioned storage medium includes: various media that can store program code, such as ROM, RAM, magnetic or optical disks.
Finally, it should be noted that: the above embodiments are only for illustrating the technical solution of the present application, and not for limiting the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some or all of the technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit of the corresponding technical solutions from the scope of the technical solutions of the embodiments of the present application.

Claims (12)

1. A method of determining a data transmission path, the method comprising:
acquiring the data quantity of data to be transmitted;
acquiring network topology information, wherein the network topology information indicates a source node, a destination node, a plurality of links between the source node and the destination node, a plurality of bandwidths and a plurality of time delays, the bandwidths are in one-to-one correspondence with the links, the time delays are in one-to-one correspondence with the links, each bandwidth in the bandwidths is an average bandwidth of the corresponding link, and each time delay in the time delays is a propagation delay of the corresponding link;
Determining T time slots based on the data volume and the network topology information, wherein each time slot in the T time slots comprises a plurality of time-slotted transmission nodes and a plurality of time-slotted links, the time-slotted transmission nodes are transmission nodes obtained by time-slotted processing of the transmission nodes, the time-slotted links are transmission links obtained by time-slotted processing of the transmission links, and T is a positive integer;
acquiring packet loss information corresponding to each time slot in the T time slots, wherein the packet loss information corresponding to each time slot comprises average packet loss rate of each time slot transmission node in the plurality of time slot transmission nodes and each time slot link in the plurality of time slot links;
and determining a target path based on packet loss information corresponding to each time slot in the T time slots, wherein the sum of average packet loss rates of the time-slotted transmission nodes and the time-slotted links in the target path is the lowest.
2. The method of claim 1, wherein the determining T time slots based on the data volume and the network topology information comprises:
acquiring first parameter information, wherein the first parameter information comprises an end-to-end time delay upper bound;
determining a first bandwidth from the bandwidths, wherein the average bandwidth of a link corresponding to the first bandwidth is smaller than the average bandwidth of links corresponding to other bandwidths, and the other bandwidths are any one bandwidth except the first bandwidth in the bandwidths;
Determining a first time delay from the plurality of time delays, wherein the propagation time delay of a link corresponding to the first time delay is larger than the propagation time delay of links corresponding to other time delays, and the other time delays are any time delay except the first time delay in the plurality of time delays;
determining a time slot granularity based on the data amount, the first bandwidth and the first time delay, wherein the time slot granularity is a corresponding time delay upper bound of each time slot transmission link in each time slot;
the T slots are determined based on the end-to-end delay upper bound and the slot granularity.
3. The method of claim 2, wherein the slot granularity is equal to a maximum of a first value and a second value, the first value being equal to a ratio of the data amount to an average bandwidth of a link to which the first bandwidth corresponds, the second value being equal to a propagation delay of the link to which the first delay corresponds.
4. A method according to claim 3, wherein T is equal to a third value, the third value being a minimum integer not lower than the ratio of the end-to-end delay upper bound to the slot granularity.
5. The method of claim 4, wherein the first parameter information further comprises a start transmission time;
The method further comprises the steps of:
and determining a target transmission period based on the starting transmission time and the end-to-end time delay upper bound, wherein the target transmission period comprises T periods, the T periods are in one-to-one correspondence with the T time slots, and each period in the T periods is a transmission period of the time slot corresponding to each period.
6. The method according to any one of claims 1 to 5, wherein determining the target path based on the packet loss information corresponding to each of the T time slots includes:
constructing a first time expansion graph according to packet loss information corresponding to each time slot in the T time slots, wherein the first time expansion graph comprises the following information: the average packet loss rate of the plurality of slotted transmission nodes and the plurality of slotted links in each time slot, and the plurality of slotted transmission nodes and the plurality of slotted links in each time slot;
adding a virtual source node and a virtual destination node in the first time expansion graph to obtain a second time expansion graph, wherein the second time expansion graph contains the following information: the multiple time slot transmission nodes and multiple time slot links of each time slot, the virtual source node and the virtual destination node, the average packet loss rate of each time slot transmission node and each time slot link, the average packet loss rate of T virtual transmission links and T virtual receiving links, wherein the T virtual transmission links comprise links from the virtual source node to the source node of each time slot in the T time slots, and the T virtual receiving links comprise links from the destination node of each time slot in the T time slots to the virtual destination node;
And determining the target path based on the second time expansion graph and a first algorithm.
7. The method of claim 6, wherein the first algorithm comprises a disco tesla dijkstra algorithm.
8. The method according to any one of claims 1 to 7, wherein the packet loss information corresponding to each time slot includes a reliability weight of each slotted transmission node and each slotted link in each time slot, the reliability weight of each slotted transmission node in each time slot is generated based on an average packet loss rate of each slotted transmission node in each time slot, and the reliability weight of each slotted link in each time slot is generated based on an average packet loss rate of each slotted link in each time slot.
9. A data transmission path determining apparatus, comprising:
the acquisition module is used for acquiring the data quantity of the data to be transmitted;
the acquisition module is further configured to acquire network topology information, where the network topology information indicates a source node, a destination node, a plurality of links between the source node and the destination node, a plurality of bandwidths, and a plurality of delays, the plurality of bandwidths are in one-to-one correspondence with the plurality of links, the plurality of delays are in one-to-one correspondence with the plurality of links, each bandwidth in the plurality of bandwidths is an average bandwidth of a corresponding link, and each delay in the plurality of delays is a propagation delay of the corresponding link;
The processing module is used for determining T time slots based on the data volume and the network topology information, each time slot in the T time slots comprises a plurality of transmission nodes and a plurality of links, the time-slotted transmission nodes are transmission nodes obtained by time-slot processing of the transmission nodes, the time-slotted links are transmission links obtained by time-slot processing of the transmission links, and T is a positive integer;
the acquisition module is further configured to acquire packet loss information corresponding to each time slot in the T time slots, where the packet loss information corresponding to each time slot includes an average packet loss rate of each transmission node and each link in each time slot;
the processing module is further configured to determine a target path based on packet loss information corresponding to each of the T time slots, where a sum of average packet loss rates of the transmission node and the link in the target path is the lowest.
10. An electronic device, comprising: a processor, and a memory communicatively coupled to the processor;
the memory stores computer-executable instructions;
the processor executes computer-executable instructions stored in the memory to implement the method of any one of claims 1 to 8.
11. A computer readable storage medium having stored therein computer executable instructions which when executed by a processor are adapted to carry out the method of any one of claims 1 to 8.
12. A computer program product, characterized in that it contains instructions for implementing the method according to any of claims 1 to 8.
CN202310594966.1A 2023-05-24 2023-05-24 Method for determining data transmission path and related device Pending CN116566834A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310594966.1A CN116566834A (en) 2023-05-24 2023-05-24 Method for determining data transmission path and related device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310594966.1A CN116566834A (en) 2023-05-24 2023-05-24 Method for determining data transmission path and related device

Publications (1)

Publication Number Publication Date
CN116566834A true CN116566834A (en) 2023-08-08

Family

ID=87494453

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310594966.1A Pending CN116566834A (en) 2023-05-24 2023-05-24 Method for determining data transmission path and related device

Country Status (1)

Country Link
CN (1) CN116566834A (en)

Similar Documents

Publication Publication Date Title
US8885510B2 (en) Heterogeneous channel capacities in an interconnect
US10084692B2 (en) Streaming bridge design with host interfaces and network on chip (NoC) layers
US9571402B2 (en) Congestion control and QoS in NoC by regulating the injection traffic
JP5021769B2 (en) Radio and bandwidth aware routing metrics for multi-radio, multi-channel and multi-hop wireless networks
US9825844B2 (en) Network topology of hierarchical ring with recursive shortcuts
JP5276220B2 (en) Bus control device and control device for outputting instructions to bus control device
US9007920B2 (en) QoS in heterogeneous NoC by assigning weights to NoC node channels and using weighted arbitration at NoC nodes
KR100961712B1 (en) Apparatus, method and computer program product providing high performance communication bus having preferred path source routing, multi-guarantee QoS and resource reservation, management and release
TW201134146A (en) Effective bandwidth path metric and path computation method for wireless mesh networks with wired links
WO2022213817A1 (en) Routing method and routing apparatus
CN114553760B (en) Path weight distribution method and device
US20200127936A1 (en) Dynamic scheduling method, apparatus, and system
CN116566834A (en) Method for determining data transmission path and related device
EP3378252B1 (en) Routing in wireless mesh communications networks
JP6633502B2 (en) Communication device
CN114095449A (en) Flow control method, network device and storage medium
JP6206105B2 (en) Communication system, communication method, and communication program
US20180316593A9 (en) Shortest path routing in single-channel networks with aggregating and non-aggregating nodes
CN111884928B (en) Multi-layer network autonomous routing method, system, device and network equipment
CN117978737A (en) Message transmission method, device, storage medium and program product
JP5483489B2 (en) Radio and bandwidth aware routing metrics for multi-radio, multi-channel and multi-hop wireless networks
GB2544525A (en) Wired mesh communications networks
CN115868145A (en) Communication method and related equipment

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