A data transmission method, apparatus, electronic device, and computer storage medium
By obtaining the congestion identifier of the shortest path in the network topology and selecting the target path to transmit data, the problem of unreasonable network resource utilization is solved, and the data transmission efficiency is improved and resources are optimized.
Patent Information
- Application Number
- CN202211095654.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-05
- Publication Date
- 2026-01-30
- Estimated Expiration
- 2042-09-05
AI Technical Summary
The existing network topology suffers from unreasonable utilization of network resources during data transmission, especially when the data volume is large, the shortest path is prone to congestion, resulting in idle resources on other paths.
By obtaining the congestion indicator of the shortest path between the source node and the destination node, when congestion occurs, the target path is selected from other paths besides the shortest path for data transmission, and the data packet is transmitted using the target path.
It alleviates the transmission pressure of the shortest path, optimizes resource utilization in the network topology, and improves data transmission efficiency.
Smart Images

Figure CN116320068B_ABST
Abstract
Description
Technical Field
[0001] This application relates to techniques for determining routing paths in a network topology, and more particularly to a data transmission method, apparatus, electronic device, and computer storage medium. Background Technology
[0002] Currently, when calculating network topology, the shortest path is usually calculated, and transmission is based on the shortest path, so that the cost of the routers passing through in the middle is minimized.
[0003] However, sometimes when there are many tasks, using the shortest path for transmission can easily cause congestion. If other nodes in the network are not on the shortest path and are not used for transmission, it will lead to a waste of network resources. This shows that there is a problem of unreasonable network resource utilization in the existing network topology when transmitting data. Summary of the Invention
[0004] This application provides a data transmission method, apparatus, electronic device, and computer storage medium that can optimize the utilization of network resources in the network topology while ensuring data transmission rate.
[0005] The technical solution of this application is implemented as follows:
[0006] This application provides a data transmission method, which is applied to a source node in a network topology, including:
[0007] Obtain the congestion identifier of the shortest path between the source node and the destination node in the network topology;
[0008] When the congestion flag indicates that the shortest path is congested, the target path is selected from the other paths between the source node and the destination node besides the shortest path;
[0009] The data packet to be transmitted is transmitted to the destination node using the target path.
[0010] This application provides a data transmission device, which is a source node in a network topology, comprising:
[0011] The acquisition module is used to acquire the congestion identifier of the shortest path between the source node and the destination node in the network topology;
[0012] The selection module is used to select a target path from other paths between the source node and the destination node, excluding the shortest path, when the congestion identifier indicates that the shortest path is congested;
[0013] The transmission module is used to transmit the data packet to be transmitted to the destination node using the target path.
[0014] This application provides an electronic device, which is a source node in a network topology, comprising:
[0015] The processor and the storage medium storing processor-executable instructions, the storage medium performing operations dependent on the processor via a communication bus, wherein when the instructions are executed by the processor, the data transmission method described in one or more of the above embodiments is executed.
[0016] This application provides a computer storage medium storing executable instructions. When the executable instructions are executed by one or more processors, the processors execute the data transmission method as described in one or more embodiments.
[0017] This application provides a data transmission method, apparatus, electronic device, and computer storage medium. The method, applied to a source node in a network topology, includes: obtaining a congestion indicator of the shortest path between the source node and a destination node in the network topology; when the congestion indicator indicates congestion on the shortest path, selecting a target path from other paths between the source node and the destination node besides the shortest path; and using the target path to transmit the data packet to be transmitted to the destination node. In other words, in this application embodiment, the congestion indicator of the shortest path between the source node and the destination node is used to determine whether the shortest path is congested. If congestion occurs, the target path selected from other paths between the source node and the destination node is used to transmit the data to be transmitted. This alleviates the transmission pressure on the shortest path and ensures full utilization of resources on other paths, avoiding unreasonable network resource utilization during data transmission in the network topology, thereby optimizing network resources in the network topology. Attached Figure Description
[0018] Figure 1 A flowchart illustrating an optional data transmission method provided in an embodiment of this application;
[0019] Figure 2 A schematic diagram illustrating an example of an optional network topology provided in this application embodiment;
[0020] Figure 3 A schematic diagram of an optional data transmission device provided in an embodiment of this application;
[0021] Figure 4 This is a schematic diagram of an optional electronic device provided in an embodiment of this application. Detailed Implementation
[0022] The technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings.
[0023] This application provides a data transmission method, which is applied to a source node in a network topology. Figure 1 A flowchart illustrating an optional data transmission method provided in an embodiment of this application is shown below. Figure 1 As shown, the data transmission may include:
[0024] S101: Obtain the congestion indicator of the shortest path between the source node and the destination node in the network topology;
[0025] Currently, the shortest path is usually chosen to transmit data in network topology. However, when the amount of data to be transmitted is large, the transmission efficiency of the shortest path will decrease. If only the shortest path is used to transmit data at this time, it will not only affect the data transmission efficiency, but also make other paths in the network topology idle, resulting in a waste of resources.
[0026] To improve data transmission efficiency and optimize network topology resources, this embodiment of the application requires monitoring the transmission efficiency of the shortest path. Here, for each node in the network topology, when it acts as a source node, a congestion flag is set for the shortest path from the source node to the destination node. The shortest path from the source node to the destination node is the path corresponding to the minimum cost value among all paths from the source node to the destination node. This congestion flag from the source node to the destination node is used to characterize the data transmission status of the shortest path from the source node to the destination node, which may include congestion and no congestion. Of course, the specific situation of congestion can also be classified. For example, the degree of congestion can be divided into severe, moderate, slight, etc. Here, this embodiment of the application does not make specific limitations on this.
[0027] Furthermore, the congestion indicator can be determined by the amount of data sent by the source node per unit time, the type of data sent within a unit event, or the number of packet losses within a unit event, etc. Here, the embodiments of this application do not make specific limitations on this.
[0028] The network topology mentioned above can be a network topology implemented through heterogeneous networking technology or a network topology implemented through Wireless Fidelity (Wi-Fi) technology. Here, this application does not make any specific limitation on this.
[0029] In addition, the network nodes in this network topology, such as the source node, destination node and intermediate node involved in the embodiments of this application, can be devices in the network topology. These devices can be terminal devices, such as smartphones, smart TVs, and smart speakers, or routing devices, such as routers.
[0030] To more accurately determine whether congestion has occurred on the shortest path, in one optional embodiment, S101 may include:
[0031] Get the amount of data and transmission time of the data packets that have been transmitted using the shortest path;
[0032] The transmission rate is calculated using the amount of data and the transmission time.
[0033] The transmission rate is used as a congestion indicator.
[0034] Understandably, after receiving the response message from the destination node for a transmitted data packet, the source node can obtain the arrival time of the data packet at the destination node from the response message, thereby obtaining the transmission time of the data packet. By dividing the data volume of the transmitted data packet by the transmission time, the transmission rate can be calculated. The transmission rate is then used as a congestion indicator, and the source node can determine whether congestion has occurred on the shortest path based on the transmission rate. This allows the source node to know the congestion situation of data transmission on the shortest path, so as to determine the target path for the data to be transmitted.
[0035] Of course, a test data packet can also be set up. The amount of data transmitted from the source node to the destination node and the transmission time can be determined by the test data packet, and then the transmission rate of the test data packet can be calculated. This transmission rate can reflect the transmission rate of the shortest path. Here, this application embodiment does not make specific limitations on this.
[0036] S102: When the congestion flag indicates that the shortest path is congested, select the target path from the paths between the source node and the destination node other than the shortest path.
[0037] Here, after obtaining the congestion flag, it is necessary to judge the congestion flag. If the congestion flag indicates that the shortest path is congested, it means that the transmission efficiency of data transmission on the shortest path is low. In order not to affect the data transmission efficiency and to make full use of the resources in the network topology, the target path is selected from the paths between the source node and the destination node other than the shortest path. Here, the path between the source node and the destination node refers to all the possible paths between the source node and the destination node. Obviously, all the possible paths include the shortest path.
[0038] In this way, by using paths other than the shortest path between the source and destination nodes to transmit data, the data transmission efficiency can be improved, and resources in the network topology can be optimized.
[0039] For the congestion indicator being the transmission rate, in one optional embodiment, the above method further includes:
[0040] When the transmission rate is less than the preset transmission rate threshold, a congestion flag is determined to indicate that the shortest path is congested.
[0041] When the transmission rate exceeds a preset transmission rate threshold, a congestion flag is determined to indicate that the shortest path is congested.
[0042] Understandably, after obtaining the transmission rate, since a preset transmission rate threshold is pre-set in the source node, this transmission rate threshold is the critical value for whether the shortest path is congested. When the transmission rate is less than the preset transmission rate threshold, it means that the transmission rate of the shortest path from the source node to the destination node is low, and it can be determined that the shortest path is congested. When the transmission rate is greater than the preset transmission rate threshold, it means that the transmission rate of the shortest path from the source node to the destination node is acceptable, and it can be determined that the shortest path is not congested. In this way, it is determined whether the shortest path is congested.
[0043] Additionally, it should be noted that when the transmission rate is equal to a preset transmission rate threshold, it can be determined that the shortest path is congested, or it can be determined that the shortest path is not congested. Here, the embodiments of this application do not specifically limit this.
[0044] In addition, for cases where the congestion indicator suggests that the shortest path is not congested, in an optional embodiment, the above method may further include:
[0045] When the congestion flag indicates that the shortest path is not congested, the shortest path is determined as the target path.
[0046] Understandably, when the congestion flag indicates that the shortest path is not congested, meaning that the data transmission capacity on the shortest path is still acceptable, the shortest path is determined as the target path. In other words, the shortest path is still used to transmit the data to be transmitted, thus ensuring the transmission rate.
[0047] The candidate paths mentioned above can be all paths from the source node to the destination node, or they can be a portion of the paths from the source node to the destination node. Here, this application embodiment does not specifically limit this.
[0048] In order to determine the candidate path to improve the data transmission rate, in an optional embodiment, S102 may include:
[0049] When the congestion flag indicates that the shortest path is congested, a candidate path is selected from the paths between the source node and the destination node;
[0050] Select the target path from the candidate paths other than the shortest path.
[0051] Here, the path between the source node and the destination node is first determined. Then, candidate paths are selected from the path between the source node and the destination node. Among the candidate paths, the intermediate nodes of any two paths do not overlap, and the candidate paths include the shortest path. The intermediate nodes of any two paths refer to the nodes other than the source node and the destination node in the path between the source node and the destination node. In other words, the candidate paths not only include the shortest path, but also the intermediate nodes of any two selected candidate paths are different. In this way, it can prevent the target path from still being congested due to overlapping intermediate nodes in the target path, so that the data transmission efficiency cannot be improved even if the target path is used.
[0052] Furthermore, when selecting a target path, paths with different priority levels can be selected for different data to be transmitted. Therefore, it is necessary to determine the priority level of each path among the candidate paths. To more reasonably determine the priority level of each path, in an optional embodiment, the above method further includes:
[0053] Determine the cost of each path among the candidate paths;
[0054] The priority level of each path is determined based on its cost value; the cost value of each path is positively correlated with its priority level.
[0055] Understandably, we can first determine the cost value of each path among the candidate paths, and then determine the priority level of each path according to its cost value, so that the cost value of each path is positively correlated with its priority level.
[0056] For example, three intervals can be set up to determine the priority level of a candidate path based on its cost value. If the path falls into the first interval, its priority level is determined to be high; if it falls into the second interval, its priority level is determined to be medium; and if it falls into the third interval, its priority level is determined to be low. In terms of the cost value coordinate axis, the first interval is to the right of the second interval, and the second interval is to the right of the third interval. Alternatively, the paths can be sorted according to their cost values. The paths with higher cost values at the top of the list are given high priority, the paths with lower cost values in the middle are given medium priority, and the paths with lower cost values at the bottom are given low priority.
[0057] Since the shortest path has the lowest cost, it has the highest priority. Thus, the priority level of each path can be determined in the above way, which helps to determine the target path for the data to be transmitted, thereby optimizing network topology resources while ensuring data transmission rate.
[0058] In order to select a suitable target path for the data to be transmitted, so as to ensure transmission rate and optimize network topology resources, in an optional embodiment, S102 may include:
[0059] Based on the type of data packet to be transmitted, the target path is selected from the candidate paths other than the shortest path.
[0060] Here, we can first determine the type of data packet to be transmitted, and then select the destination path based on the type of data packet to be transmitted. In this way, the selected destination path is closely related to the type of data packet to be transmitted, which is beneficial to the transmission of the data packet to be transmitted.
[0061] Furthermore, in order to achieve transmission of different types of data packets while optimizing resources and ensuring transmission rate, in one optional embodiment, selecting a target path from the candidate paths other than the shortest path based on the type of data packet to be transmitted includes:
[0062] When the data packet to be transmitted is a video data packet, the path with the highest priority among the candidate paths other than the shortest path is determined as the target path;
[0063] When the type of data packet to be transmitted is an audio data packet, the path with the highest priority level among the candidate paths other than the shortest path will be determined as the target path;
[0064] When the data packet to be transmitted is a file data packet, the path with the lowest priority among the candidate paths other than the shortest path is determined as the target path.
[0065] Understandably, the types of data packets to be transmitted can be divided into three categories: video data packets, audio data packets, and file data packets. Typically, video data packets can negatively impact the user experience. Therefore, when the data packet to be transmitted is a video data packet, the path with the highest priority among the candidate paths (excluding the shortest path) is selected as the target path. In other words, the path with the highest priority is selected from the other paths to transmit the video data packet. This ensures the data transmission rate, prevents stuttering during video playback, and makes full use of the network topology resources.
[0066] Among them, audio data packets are of lower priority than video data packets. Therefore, when the data packet to be transmitted is an audio data packet, the path with a priority level of medium is selected from the other paths besides the shortest path as the target path. In other words, the path with a priority level of medium is selected from the other paths to transmit the audio data packet, so that the audio data packet can be transmitted quickly while making full use of the network topology resources.
[0067] In addition, file data packets are of lower priority than audio data packets. Therefore, when the data packet to be transmitted is a file data packet, the path with the lowest priority among the candidate paths other than the shortest path is determined as the target path. In other words, the path with the lowest priority is selected from the other paths to transmit audio data packets, so as to make full use of the network topology resources while utilizing the longer path to transmit audio data packets.
[0068] In this way, by using paths with different priority levels to transmit different types of data, the resources in the network topology are optimized while ensuring the data transmission rate.
[0069] In addition, in order to select a suitable target path for the data to be transmitted, so as to ensure the transmission rate and optimize network topology resources, in an optional embodiment, S102 may include:
[0070] Obtain the priority level of the data packet to be transmitted;
[0071] Based on the priority level of the data packets to be transmitted, the target path is selected from the candidate paths except for the shortest path.
[0072] Understandably, the priority level of the data packets to be transmitted is determined first, and then the target path is selected based on the determined priority level of the data packets to be transmitted, so that data packets of different priority levels can be transmitted using the corresponding priority level path.
[0073] Here, in order to obtain the priority level of the data packet to be transmitted, the priority level of the data packet to be transmitted can be determined according to a preset rule, or the user can set the priority level of the data packet to be transmitted according to their own needs. This application embodiment does not make specific limitations in this regard.
[0074] Furthermore, in order to select a target path based on the priority level of the data to be transmitted, in an optional embodiment, the target path is selected from the candidate paths other than the shortest path based on the priority level of the data packets to be transmitted, including:
[0075] When the priority level of the data packet to be transmitted is high, the path with the highest priority level among the candidate paths other than the shortest path is determined as the target path;
[0076] When the priority level of the data packet to be transmitted is medium, the path with a medium priority level among the other paths other than the shortest path is determined as the target path;
[0077] When the priority level of the data packet to be transmitted is low, the path with the lowest priority level among the candidate paths other than the shortest path is determined as the target path.
[0078] Understandably, when the priority level of the data packet to be transmitted is high, the data packet is considered to be a relatively important data packet. Therefore, the path with the highest priority level among the other paths besides the shortest path is determined as the target path. In other words, the path with the highest priority level is selected from the other paths to transmit the data packet with the highest priority level, thereby ensuring that the data packet with the highest priority level is transmitted to the destination node at a higher transmission rate, while optimizing the resources in the network topology.
[0079] When the priority level of the data packet to be transmitted is medium, the data packet is considered to be of general importance. Therefore, the path with a medium priority level among the other paths besides the shortest path is determined as the target path. In other words, the path with a medium priority level is selected from the other paths to transmit the data packet with a medium priority level, thereby ensuring that the data packet with a medium priority level is transmitted to the destination node at a moderate transmission rate, while optimizing the resources in the network topology.
[0080] When the priority level of the data packet to be transmitted is low, the data packet is considered to be an ordinary data packet. Therefore, the path with a low priority level among the other paths besides the shortest path is determined as the target path. In other words, the path with a low priority level is selected from the other paths to transmit the data packet with a low priority level, thereby ensuring that the data packet with a low priority level can be transmitted to the destination node, while optimizing the resources in the network topology.
[0081] S103: Use the target path to transmit the data packet to the destination node.
[0082] After selecting the target path, the data packet to be transmitted can be transmitted to the destination node using the target path. Using the target path to transmit the data packet can ensure the transmission rate of the data packet and optimize the resources in the network topology, thereby improving the utilization of resources.
[0083] The following examples illustrate the data transmission methods in one or more of the above embodiments.
[0084] Figure 2 A schematic diagram illustrating an example of an optional network topology provided in this application embodiment, such as... Figure 2 As shown, the source node is Node1, the destination node is Node3, and the intermediate nodes include: Node2, Node4, Node5, Node6, Node7, and Node8.
[0085] The cost between Node1 and Node2 is cost2, the cost between Node2 and Node3 is cost1, the cost between Node1 and Node4 is cost1, the cost between Node4 and Node5 is cost5, the cost between Node2 and Node5 is cost1, the cost between Node5 and Node3 is cost3, the cost between Node4 and Node7 is cost3, the cost between Node7 and Node8 is cost6, the cost between Node5 and Node8 is cost2, the cost between Node8 and Node6 is cost6, the cost between Node6 and Node3 is cost6, and the cost between Node1 and Node7 is cost6.
[0086] When transmitting data between Node1 and Node3, it is first determined whether there is congestion on the shortest path from Node1 to Node3 (Node1->Node2->Node3). Congestion can be calculated using the transmission rate, which is calculated using the formula "transmission rate = amount of data transmitted / transmission time". When the transmission rate is less than the preset transmission rate threshold, it is considered that the multi-task transmission between Node1->Node2->Node3 is congested, and priority routing path lookup is initiated.
[0087] The priority routing path lookup process traverses the network topology, generates priority paths of each level according to cost value, and excludes intermediate nodes already included in the higher priority paths to avoid affecting the transmission of higher priority path nodes.
[0088] For example, based on Figure 2 The given topology can generate three paths with different priorities, as follows:
[0089] The shortest path is: Node1->Node2->Node3, with high priority.
[0090] The second shortest path is Node1->Node4->Node5->Node3, with a medium priority level.
[0091] The next shortest path is Node1->Node7->Node8->Node6->Node3, with a low priority level.
[0092] In this way, the generated series of priority routing paths can be combined with the priority order of tasks. During congestion, higher priority tasks will use higher priority routing paths, and lower priority tasks will use lower priority routing paths. This will maximize the use of path resource nodes in the entire topology network and ensure the timely execution of high priority tasks.
[0093] In addition, the priority level of a task can be defined and passed in according to the scenario when the task starts transmission. For example, the priority level of video data packet transmission is defined to be higher than that of file data packet transmission. In this way, when congestion occurs, file data packets can be adjusted to be transmitted through the second shortest path. Thus, because there is an additional path, the quality of network transmission can be improved.
[0094] In this example, when multi-task transmission is congested, the transmission of the second-lowest priority task is placed on the second-shortest route path by calculating the multi-level weighted routing path, thereby improving the transmission quality of network data.
[0095] This application provides a data transmission method applied to a source node in a network topology. The method includes: obtaining a congestion indicator of the shortest path between the source node and a destination node in the network topology; when the congestion indicator indicates congestion on the shortest path, selecting a target path from other paths between the source node and the destination node besides the shortest path; and using the target path to transmit the data packet to be transmitted to the destination node. In other words, in this application embodiment, the congestion indicator of the shortest path between the source node and the destination node is used to determine whether the shortest path is congested. If congestion occurs, the target path selected from other paths between the source node and the destination node is used to transmit the data to be transmitted. This alleviates the transmission pressure on the shortest path and ensures full utilization of resources on other paths, avoiding unreasonable network resource utilization during data transmission in the network topology, thereby optimizing network resources in the network topology.
[0096] Based on the same inventive concept as the foregoing embodiments, this application provides a data transmission device, which is a source node in a network topology. Figure 3The following is a schematic diagram of an optional data transmission device provided in an embodiment of this application, as shown below. Figure 3 As shown, the data transmission device includes:
[0097] The acquisition module 31 is used to acquire the congestion identifier of the shortest path between the source node and the destination node in the network topology;
[0098] The selection module 32 is used to select a target path from the paths between the source node and the destination node other than the shortest path when the congestion indicator indicates that the shortest path is congested.
[0099] The transmission module 33 is used to transmit the data packet to be transmitted to the destination node using the target path.
[0100] In an optional embodiment, the selection module 32 is specifically used for:
[0101] When a congestion flag indicates that the shortest path is congested, a candidate path is selected from the paths between the source node and the destination node; wherein, the intermediate nodes of any two paths in the candidate path do not overlap.
[0102] Select the target path from the candidate paths other than the shortest path.
[0103] In an optional embodiment, the data transmission device is further configured to:
[0104] Determine the cost of each path among the candidate paths;
[0105] The priority level of each path is determined based on its cost value; the cost value of each path is positively correlated with its priority level.
[0106] In an optional embodiment, the acquisition module 31 is specifically used for:
[0107] Get the amount of data and transmission time of the data packets that have been transmitted using the shortest path;
[0108] The transmission rate is calculated using the amount of data and the transmission time.
[0109] The transmission rate is used as a congestion indicator.
[0110] In an optional embodiment, the data transmission device is further configured to:
[0111] When the transmission rate is less than the preset transmission rate threshold, a congestion flag is determined to indicate that the shortest path is congested.
[0112] When the transmission rate exceeds a preset transmission rate threshold, a congestion flag is determined to indicate that the shortest path is congested.
[0113] In an optional embodiment, module 32 is selected and is specifically used for:
[0114] Based on the type of data packet to be transmitted, the target path is selected from the candidate paths other than the shortest path.
[0115] In an optional embodiment, the selection module 32 selects a target path from the candidate paths (excluding the shortest path) based on the type of the data packet to be transmitted, including:
[0116] When the data packet to be transmitted is a video data packet, the path with the highest priority among the candidate paths other than the shortest path is determined as the target path;
[0117] When the type of data packet to be transmitted is an audio data packet, the path with the highest priority level among the candidate paths other than the shortest path will be determined as the target path;
[0118] When the data packet to be transmitted is a file data packet, the path with the lowest priority among the candidate paths other than the shortest path is determined as the target path.
[0119] In an optional embodiment, module 32 is selected and is specifically used for:
[0120] Obtain the priority level of the data packet to be transmitted;
[0121] Based on the priority level of the data packets to be transmitted, the target path is selected from the candidate paths except for the shortest path.
[0122] In an optional embodiment, the selection module 32 selects the target path from the candidate paths other than the shortest path based on the priority level of the data packet to be transmitted, including:
[0123] When the priority level of the data packet to be transmitted is high, the path with the highest priority level among the candidate paths other than the shortest path is determined as the target path;
[0124] When the priority level of the data packet to be transmitted is medium, the path with a medium priority level among the other paths other than the shortest path is determined as the target path;
[0125] When the priority level of the data packet to be transmitted is low, the path with the lowest priority level among the candidate paths other than the shortest path is determined as the target path.
[0126] In an optional embodiment, the network node is further configured to:
[0127] When the congestion flag indicates that the shortest path is not congested, the shortest path is determined as the target path.
[0128] In practical applications, the acquisition module 31, selection module 32 and transmission module 33 mentioned above can be implemented by a processor located on the network node, specifically a central processing unit (CPU), microprocessor (MPU), digital signal processor (DSP), or field programmable gate array (FPGA).
[0129] Figure 4 A schematic diagram of another optional network node structure provided in the embodiments of this application is shown below. Figure 4 As shown, this application embodiment provides a network node 400, including:
[0130] The processor 41 and the storage medium 42 storing instructions executable by the processor 41, the storage medium 42 performing operations via the communication bus 43 in dependence on the processor 41, and when the instructions are executed by the processor 41, the data transmission method performed in one or more of the above embodiments is executed.
[0131] It should be noted that in practical applications, the various components in the terminal are coupled together via the communication bus 43. It can be understood that the communication bus 43 is used to achieve communication between these components. In addition to the data bus, the communication bus 43 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in... Figure 4 The general labeled all buses as communication bus 43.
[0132] This application provides a computer storage medium storing executable instructions. When the executable instructions are executed by one or more processors, the processors execute the data transmission method as described in the control device in one or more of the above embodiments.
[0133] The computer-readable storage medium can be a magnetic random access memory (FRAM), a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a flash memory, a magnetic surface memory, an optical disc, or a compact disc read-only memory (CD-ROM), etc.
[0134] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of hardware embodiments, software embodiments, or embodiments combining software and hardware aspects. Furthermore, this application can take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage and optical storage) containing computer-usable program code.
[0135] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0136] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0137] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0138] The above description is merely a preferred embodiment of this application and is not intended to limit the scope of protection of this application.
Claims
1. A data transmission method, characterized by, The method is applied to a source node in a network topology, and comprises: obtaining a congestion identifier of a shortest path between the source node and a destination node in the network topology; when the congestion identifier indicates that the shortest path is congested, selecting a target path from paths between the source node and the destination node other than the shortest path; transmitting a data packet to be transmitted to the destination node by using the target path; wherein the step of selecting the target path from the paths between the source node and the destination node other than the shortest path when the congestion identifier indicates that the shortest path is congested comprises: when the congestion identifier indicates that the shortest path is congested, selecting a candidate path from the paths between the source node and the destination node; wherein intermediate nodes of any two paths in the candidate path do not coincide; selecting the target path from the paths other than the shortest path in the candidate path; wherein the method further comprises: determining a generation value of each path in the candidate path; determining a priority level of each path according to the generation value of each path; wherein the generation value of each path is positively correlated with the priority level of each path.
2. The method of claim 1, wherein, The step of obtaining the congestion identifier of the shortest path between the source node and the destination node in the network topology comprises: obtaining a data volume and a transmission time of a data packet transmitted by using the shortest path; calculating a transmission rate by using the data volume and the transmission time; determining the transmission rate as the congestion identifier.
3. The method of claim 2, wherein, The method further comprises: when the transmission rate is less than a preset transmission rate threshold, determining that the congestion identifier indicates that the shortest path is congested; when the transmission rate is greater than a preset transmission rate threshold, determining that the congestion identifier indicates that the shortest path is congested.
4. The method of claim 1, wherein, The step of selecting the target path from the candidate paths other than the shortest path between the source node and the destination node comprises: based on a type of the data packet to be transmitted, selecting the target path from the paths other than the shortest path in the candidate path.
5. The method of claim 4, wherein, The step of selecting the target path from the paths other than the shortest path in the candidate path based on the type of the data packet to be transmitted comprises: when the type of the data packet to be transmitted is a video data packet, determining a path with a high priority level from the paths other than the shortest path in the candidate path as the target path; when the type of the data packet to be transmitted is an audio data packet, determining a path with a medium priority level from the paths other than the shortest path in the candidate path as the target path; when the type of the data packet to be transmitted is a file data packet, determining a path with a low priority level from the paths other than the shortest path in the candidate path as the target path.
6. The method of claim 1, wherein, The target path is selected from the paths other than the shortest path among the candidate paths from the source node to the destination node, comprising: obtaining the priority level of the data packet to be transmitted; selecting the target path from the paths other than the shortest path among the candidate paths based on the priority level of the data packet to be transmitted.
7. The method of claim 6, wherein, The selecting the target path from the paths other than the shortest path among the candidate paths based on the priority level of the data packet to be transmitted comprises: when the priority level of the data packet to be transmitted is high, determining the path with high priority level as the target path from the paths other than the shortest path among the candidate paths; when the priority level of the data packet to be transmitted is medium, determining the path with medium priority level as the target path from the paths other than the shortest path among the candidate paths; when the priority level of the data packet to be transmitted is low, determining the path with low priority level as the target path from the paths other than the shortest path among the candidate paths.
8. The method of claim 1, wherein, The method further comprises: when the congestion identifier indicates that the shortest path is not congested, determining the shortest path as the target path.
9. A data transmission apparatus, characterized by comprising: The data transmission device is a source node of a network topology, comprising: an obtaining module, configured to obtain a congestion identifier of a shortest path from the source node to a destination node in the network topology; a selecting module, configured to select a target path from paths other than the shortest path among paths from the source node to the destination node when the congestion identifier indicates that the shortest path is congested; a transmitting module, configured to transmit a data packet to be transmitted to the destination node by using the target path; wherein the selecting module is configured to: select a candidate path from the paths from the source node to the destination node when the congestion identifier indicates that the shortest path is congested; wherein intermediate nodes of any two paths in the candidate path do not coincide; select the target path from the paths other than the shortest path among the candidate paths. The data transmission device is further configured to: determine a value of each path in the candidate path; determine a priority level of each path according to the value of each path; wherein the value of each path is positively correlated with the priority level of each path.
10. An electronic device, comprising: The electronic device is a source node of a network topology, comprising: a processor and a storage medium having instructions executable by the processor, the storage medium performing operations in dependence on the processor, when the instructions are executed by the processor, performing the data transmission method of any one of claims 1 to 8.
11. A computer storage medium, characterized in that a storage medium having executable instructions, when the executable instructions are executed by one or more processors, the processor performing the data transmission method of any one of claims 1 to 8.
Citation Information
Patent Citations
Network path determination and switching method and device, equipment, medium and program product
CN113347083A
Data center network mixed flow routing method and system based on path isolation
CN113438163A