Bandwidth measurement method, device, system, node and readable storage medium
By interacting with data packets between the source and destination nodes, the available bandwidth of the transmission link is determined, which solves the problem of inaccurate measurement of available bandwidth in the prior art, realizes real-time and accurate bandwidth measurement, and reduces network resource consumption.
Patent Information
- Application Number
- CN202310464926.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-04-26
- Publication Date
- 2026-01-02
- Estimated Expiration
- 2043-04-26
AI Technical Summary
Existing methods for measuring bandwidth are susceptible to background traffic noise, leading to inaccurate measurements.
By exchanging probe and response packets between the source and destination nodes, and utilizing the first information in the probe packets and the second information in the response packets, the available bandwidth of the transmission link is determined, ensuring the accuracy of the measurement.
It enables real-time and accurate measurement of available network bandwidth with a small amount of probe traffic, reducing the impact of background traffic noise and lowering network resource consumption.
Smart Images

Figure CN118869553B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application belongs to the technical field of communication, and particularly relates to a method, device, system, node and readable storage medium for measuring available bandwidth. BACKGROUND
[0002] Resources in a communication network are always limited. As long as there is a case of grabbing network resources, a requirement for Quality of Service (QoS) will appear, and the main factor affecting the quality of service is the actual available bandwidth of a communication device. Therefore, only when the actual available bandwidth of the communication device is accurately obtained, can effective control over the quality of service be realized.
[0003] At present, a commonly used method for measuring available bandwidth is mainly a method based on a system performance bottleneck. However, this method is easily affected by background traffic and other noises during measurement of available bandwidth, thereby causing the available bandwidth to be unable to be accurately measured. SUMMARY
[0004] Embodiments of the application provide a method, device, system, node and readable storage medium for measuring available bandwidth, to solve the problem that the available bandwidth cannot be accurately measured at present.
[0005] To solve the above technical problem, the application is implemented as follows:
[0006] In a first aspect, a method for measuring available bandwidth is provided, comprising:
[0007] a source node sends a probe data packet to a destination node, the probe data packet comprising first information, the first information being used to indicate a first available bandwidth determined according to an available bandwidth of the source node;
[0008] the source node receives a response data packet sent by the destination node, wherein the response data packet comprises second information, the second information being used to indicate a second available bandwidth, when the available bandwidth of the destination node is greater than or equal to the first available bandwidth, the second available bandwidth is equal to the first available bandwidth; or when the available bandwidth of the destination node is less than the first available bandwidth, the second available bandwidth is equal to the available bandwidth of the destination node;
[0009] the source node determines the second available bandwidth as the available bandwidth of a transmission link between the source node and the destination node.
[0010] In a second aspect, a method for measuring available bandwidth is provided, comprising:
[0011] The destination node receives the probe data packet sent by the source node, wherein the probe data packet comprises first information, and the first information is used to indicate a first available bandwidth determined according to the available bandwidth of the source node;
[0012] The destination node constructs a response data packet according to the first available bandwidth and the available bandwidth of the destination node, wherein the response data packet comprises second information, and the second information is used to indicate a second available bandwidth, when the available bandwidth of the destination node is greater than or equal to the first available bandwidth, the second available bandwidth is equal to the first available bandwidth; or when the available bandwidth of the destination node is less than the first available bandwidth, the second available bandwidth is equal to the available bandwidth of the destination node;
[0013] The destination node sends the response data packet to the source node, and the second available bandwidth indicated by the second information in the response data packet is used to determine the available bandwidth of the transmission link between the source node and the destination node.
[0014] In a fifth aspect, a system for measuring available bandwidth is provided, comprising a source node, at least one intermediate node and a destination node, wherein,
[0015] The source node is configured to send a probe data packet to a next-hop node, wherein the probe data packet comprises first information, and the first information is used to indicate the available bandwidth of the source node;
[0016] Each intermediate node is configured to receive the probe data packet from a previous-hop node, and when the available bandwidth of the intermediate node is less than the available bandwidth indicated by the first information in the probe data packet, update the probe data packet so that the first information in the updated probe data packet indicates the available bandwidth of the intermediate node, and forward the updated probe data packet to a next-hop node; or when the available bandwidth of the intermediate node is greater than or equal to the available bandwidth indicated by the first information in the probe data packet, keep the probe data packet unchanged, and forward the probe data packet to a next-hop node;
[0017] The destination node is configured to receive the probe data packet from a previous-hop node, and construct a response data packet according to the probe data packet, and send the response data packet to the source node, wherein the response data packet comprises second information, and the second information is used to indicate a second available bandwidth, when the available bandwidth of the destination node is greater than or equal to the first available bandwidth indicated by the first information in the probe data packet, the second available bandwidth is equal to the first available bandwidth; or when the available bandwidth of the destination node is less than the first available bandwidth, the second available bandwidth is equal to the available bandwidth of the destination node;
[0018] The source node is further configured to receive the response data packet and determine the second available bandwidth as the available bandwidth of the transmission link between the source node and the destination node.
[0019] In a fourth aspect, a device for measuring available bandwidth is provided, and is applied to a source node, and includes:
[0020] A first sending module is configured to send a probe data packet to a destination node, wherein the probe data packet includes first information, and the first information is used to indicate a first available bandwidth determined according to an available bandwidth of the source node.
[0021] A first receiving module is configured to receive a response data packet sent by the destination node, wherein the response data packet includes second information, and the second information is used to indicate a second available bandwidth, and when the available bandwidth of the destination node is greater than or equal to the first available bandwidth, the second available bandwidth is equal to the first available bandwidth; or when the available bandwidth of the destination node is less than the first available bandwidth, the second available bandwidth is equal to the available bandwidth of the destination node.
[0022] A determining module is configured to determine the second available bandwidth as the available bandwidth of the transmission link between the source node and the destination node.
[0023] In a fifth aspect, a device for measuring available bandwidth is provided, and is applied to a destination node, and includes:
[0024] A second receiving module is configured to receive a probe data packet sent by a source node, wherein the probe data packet includes first information, and the first information is used to indicate a first available bandwidth determined according to an available bandwidth of the source node.
[0025] A constructing module is configured to construct a response data packet according to the first available bandwidth and an available bandwidth of the destination node, wherein the response data packet includes second information, and the second information is used to indicate a second available bandwidth, and when the available bandwidth of the destination node is greater than or equal to the first available bandwidth, the second available bandwidth is equal to the first available bandwidth; or when the available bandwidth of the destination node is less than the first available bandwidth, the second available bandwidth is equal to the available bandwidth of the destination node.
[0026] A second sending module is configured to send the response data packet to the source node, and the second available bandwidth indicated by the second information in the response data packet is used to determine the available bandwidth of the transmission link between the source node and the destination node.
[0027] In a sixth aspect, a communication device is provided, which includes a processor, a memory, and a program or instructions stored in the memory and executable on the processor, and the program or instructions, when executed by the processor, implement the steps of the method according to the first aspect or the steps of the method according to the second aspect.
[0028] In a seventh aspect, a readable storage medium is provided, which stores a program or instructions, and the program or instructions, when executed by a processor, implement the steps of the method according to the first aspect or the steps of the method according to the second aspect.
[0029] In the embodiments of the present application, the source node can send a probe data packet to the destination node, the probe data packet including first information, the first information being used to indicate a first available bandwidth determined according to the available bandwidth of the source node, and receive a response data packet sent by the destination node, the response data packet including second information, the second information being used to indicate a second available bandwidth, when the available bandwidth of the destination node is greater than or equal to the first available bandwidth, the second available bandwidth being equal to the first available bandwidth; or when the available bandwidth of the destination node is less than the first available bandwidth, the second available bandwidth being equal to the available bandwidth of the destination node, and the second available bandwidth being determined as the available bandwidth of the transmission link between the source node and the destination node. In this way, the available bandwidth of the network can be measured in real time and accurately using a small amount of probe traffic, and is not easily affected by background traffic and other noises. BRIEF DESCRIPTION OF DRAWINGS
[0030] Figure 1 is a flowchart of an available bandwidth measurement method provided by the embodiments of the present application;
[0031] Figure 2 is a schematic diagram of the data format of the probe data packet / response data packet in the embodiments of the present application;
[0032] Figure 3 is a schematic diagram of the available bandwidth measurement process in the embodiments of the present application;
[0033] Figure 4 is a flowchart of another available bandwidth measurement method provided by the embodiments of the present application;
[0034] Figure 5 is a structural schematic diagram of an available bandwidth measurement system provided by the embodiments of the present application;
[0035] Figure 6 is a structural schematic diagram of an available bandwidth measurement device provided by the embodiments of the present application;
[0036] Figure 7 is a structural schematic diagram of an available bandwidth measurement device provided by the embodiments of the present application;
[0037] Figure 8 Figure 1 is a structural schematic diagram of a communication device provided by an embodiment of the present application. DETAILED DESCRIPTION
[0038] The technical solutions in the embodiments of the present application will be clearly and completely described with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are some but not all of the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative work fall within the protection scope of the present application.
[0039] The terms "first", "second", and the like in the specification and claims of the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged under appropriate circumstances, so that the embodiments of the present application can be implemented in an order other than that illustrated or described herein, and the objects distinguished by "first", "second", etc. are generally a category and do not limit the number of objects, for example, the first object can be one or more.
[0040] The available bandwidth measurement method, device, system, node and readable storage medium provided by the embodiments of the present application will be described in detail below with reference to the drawings and specific embodiments and their application scenarios.
[0041] Please refer to Figure 1 , Figure 1 Figure 1 is a flowchart of an available bandwidth measurement method provided by an embodiment of the present application, which is performed by a source node, as shown in Figure 1 The method comprises the following steps:
[0042] Step 11: The source node sends a probe data packet to the destination node, wherein the probe data packet comprises first information, and the first information is used to indicate a first available bandwidth determined according to the available bandwidth of the source node.
[0043] Step 12: The source node receives a response data packet sent by the destination node, wherein the response data packet comprises second information, and the second information is used to indicate a second available bandwidth, when the available bandwidth of the destination node is greater than or equal to the first available bandwidth, the second available bandwidth is equal to the first available bandwidth; or when the available bandwidth of the destination node is less than the first available bandwidth, the second available bandwidth is equal to the available bandwidth of the destination node.
[0044] Step 13: The source node determines the second available bandwidth as the available bandwidth of the transmission link between the source node and the destination node.
[0045] The probe data packet is used to measure the available bandwidth of the transmission link between the source node and the destination node. The response data packet is used for the source node to determine the available bandwidth of the transmission link between the source node and the destination node. The source node and the destination node are two nodes for data interaction, for example, the source node is a terminal and the destination node is a network device, or the source node is a network device and the destination node is a terminal, or the source node and the destination node are different terminals, which are not limited.
[0046] In some embodiments, the probe data packet further comprises a source IP address and a port number, a flow ID, a destination IP address and a port number, etc., so as to accurately transmit the probe data packet.
[0047] In some embodiments, the response data packet further comprises a source IP address and a port number, a flow ID, a destination IP address and a port number, etc., so as to accurately transmit the response data packet.
[0048] In some embodiments, the data format of the probe data packet / response data packet can be as shown in Figure 2 The IP head indicates the IP head of the probe data packet / response data packet. The hop-count indicates the number of hops of the link, which is optional 8 bits. The path-ID / stream-ID indicates the ID of an end-to-end network path, which is optional 24 bits. The available-bandwidth indicates the size of the available bandwidth carried, which is optional 32 bits.
[0049] It can be understood that, by the embodiments of the present application, the available bandwidth of the network can be measured in real time and accurately using a small amount of probe traffic, and is not easily affected by background traffic and other noises. The proportion of the bandwidth occupied by the available bandwidth measurement traffic is small, and the network resources consumed are few.
[0050] Optionally, the scenarios to which the embodiments of the present application are applicable include, but are not limited to, network available bandwidth measurement, network QoS monitoring, network congestion control, network performance tuning, etc.
[0051] In some embodiments, if there is no intermediate node between the source node and the destination node, the available bandwidth of the source node can be directly determined as the first available bandwidth carried in the probe data packet.
[0052] Optionally, the source node and the destination node can comprise at least one intermediate node, and the process of sending the probe data packet to the destination node can comprise:
[0053] The source node sends a probe data packet to the destination node through at least one intermediate node, wherein the first information in the probe data packet indicates that the first available bandwidth is the minimum value of the available bandwidth of the source node and the available bandwidth of the at least one intermediate node.
[0054] In this way, the minimum value of the available bandwidth of the source node and the available bandwidth of the at least one intermediate node can be informed to the destination node, so that the destination node can reasonably determine the available bandwidth of the transmission link between the source node and the destination node, and the source node can accurately determine the end-to-end available bandwidth.
[0055] Optionally, in order to realize that the first information in the probe data packet indicates that the first available bandwidth is the minimum value of the available bandwidth of the source node and the available bandwidth of the at least one intermediate node, after receiving the probe data packet from the previous hop node (such as the previous hop source node or the previous hop intermediate node), the intermediate node can compare the available bandwidth of the intermediate node with the available bandwidth indicated by the first information in the probe data packet, and when the available bandwidth of the intermediate node is less than the available bandwidth indicated by the first information in the probe data packet, update the probe data packet so that the first information in the updated probe data packet indicates the available bandwidth of the intermediate node, and forward the updated probe data packet to the next hop node (such as the next hop destination node or the next hop intermediate node); or when the available bandwidth of the intermediate node is greater than or equal to the available bandwidth indicated by the first information in the probe data packet, keep the probe data packet unchanged, and forward the probe data packet to the next hop node (such as the next hop destination node or the next hop intermediate node).
[0056] In some embodiments, the source node can include an available bandwidth calculation module, a probe data packet construction module, a sending module, a receiving module, and an available bandwidth statistics module, etc. The available bandwidth calculation module is configured to calculate the available bandwidth of the source node according to the throughput of the out port of the source node, the buffer occupancy, etc. The data packet construction module is configured to construct a probe data packet, which can carry the source IP address and port number, the flow ID, the destination IP address and port number, the available bandwidth, etc. The sending module is configured to send the constructed probe data packet to the next hop node (such as the next hop intermediate node). The receiving module is configured to receive the response data packet sent by the destination node. The available bandwidth statistics module is configured to parse the available bandwidth information of the transmission link between the source node and the destination node according to the information carried in the response data packet, and store the available bandwidth information of the transmission link.
[0057] In some embodiments, the destination node can include a receiving module, an available bandwidth calculating module, a reply data packet constructing module, a sending module, and the like. The receiving module is configured to receive the probe data packet sent by the source node. The available bandwidth calculating module is configured to calculate the available bandwidth of the destination node according to the throughput of the ingress port of the destination node, the buffer occupancy, and the like. The reply data packet constructing module is configured to construct a reply data packet according to the information carried in the received probe data packet. For example, if the available bandwidth of the destination node is greater than or equal to the first available bandwidth carried in the probe data packet, the reply data packet is constructed with the first available bandwidth as the available bandwidth of the transmission link. Alternatively, if the available bandwidth of the destination node is less than the first available bandwidth carried in the probe data packet, the reply data packet is constructed with the available bandwidth of the destination node as the available bandwidth of the transmission link. The sending module is configured to send the reply data packet to the source node through at least one intermediate node.
[0058] In some embodiments, the intermediate node can include a receiving module, an available bandwidth calculating module, a data packet updating module, a sending module, and the like. The receiving module is configured to receive the probe data packet from the previous hop node (e.g., the source node or the previous hop intermediate node). The available bandwidth calculating module is configured to calculate the available bandwidth of the node according to the throughput of the ingress and egress ports of the node, the buffer occupancy, and the like. The data packet updating module is configured to compare the available bandwidth of the intermediate node with the available bandwidth indicated by the first information in the received probe data packet, and when the available bandwidth of the intermediate node is less than the available bandwidth indicated by the first information in the probe data packet, update the probe data packet so that the available bandwidth indicated by the first information in the updated probe data packet is the available bandwidth of the intermediate node, and then forward the updated probe data packet to the next hop node (e.g., the next hop destination node or the next hop intermediate node) by the sending module. Alternatively, when the available bandwidth of the intermediate node is greater than or equal to the available bandwidth indicated by the first information in the probe data packet, keep the probe data packet unchanged, and then forward the probe data packet to the next hop node (e.g., the next hop destination node or the next hop intermediate node) by the sending module.
[0059] Optionally, considering that the available bandwidth of the source node is strongly related to the throughput of the egress port of the source node, the available bandwidth of the source node can be determined according to the maximum bandwidth of the egress port of the source node and the current traffic value of the egress port of the source node.
[0060] For example, the available bandwidth ABW1 of the source node can be calculated by using the following formula 1:
[0061]
[0062] Wherein, a1 represents the available bandwidth coefficient of the source node, such as: if there are multiple probe traffics, a1 represents the available bandwidth coefficient of a single probe traffic, and a1 can be set as 1 by default; or if there is a single probe traffic, a1 is set as 1. ABW1 represents the maximum bandwidth of the out port of the source node. ABW1 represents the current traffic value of the out port of the source node. β1 represents the storage and computing capability coefficient of the source node, and β1 is related to the storage and computing capability of the source node.
[0063] Optionally, considering that the available bandwidth of the destination node is strongly related to the throughput of the in port of the destination node, the available bandwidth of the destination node can be determined according to the maximum bandwidth of the in port of the destination node and the current traffic value of the in port of the destination node.
[0064] For example, the available bandwidth ABW2 of the destination node can be calculated by using the following formula 2.
[0065]
[0066] Wherein, a2 represents the available bandwidth coefficient of the destination node, such as: if there are multiple probe traffics, a2 represents the available bandwidth coefficient of a single probe traffic, and a2 can be set as 1 by default; or if there is a single probe traffic, a2 is set as 1. ABW2 represents the maximum bandwidth of the in port of the destination node. ABW2 represents the current traffic value of the in port of the destination node.
[0067] Optionally, since the available bandwidth of the intermediate node is strongly related to the throughput of the in port of the destination node, the available bandwidth of the intermediate node can be determined according to the maximum bandwidth of the in port of the intermediate node, the current traffic value of the in port of the intermediate node, the maximum bandwidth of the out port of the intermediate node and the current traffic value of the out port of the intermediate node.
[0068] For example, the available bandwidth ABW3 of the intermediate node is calculated by using the following formula 3.
[0069]
[0070] Wherein, a3 represents the available bandwidth coefficient of the intermediate node, such as: if there are multiple probe traffics, a3 represents the available bandwidth coefficient of a single probe traffic, and a3 can be set as 1 by default; or if there is a single probe traffic, a3 is set as 1. ABW3 represents the maximum bandwidth of the in port of the intermediate node. ABW3 represents the current traffic value of the in port of the intermediate node. ABW3 represents the maximum bandwidth of the out port of the intermediate node. This represents the current traffic value at the outgoing port of the intermediate node. β3 represents the storage and computing capacity coefficient of the intermediate node, which is related to the storage and computing capacity of the intermediate node.
[0071] The following is combined Figure 3 The available bandwidth measurement process in this application is described in detail.
[0072] like Figure 3 As shown, the specific process for measuring available bandwidth includes:
[0073] S31: The source node calculates the available bandwidth of its own node and constructs a probe packet, which carries the available bandwidth of its own node.
[0074] S32: The source node sends the probe data packet to the next hop intermediate node;
[0075] S33: The intermediate node receives the probe data packet and calculates the available bandwidth of this node;
[0076] S34: If the available bandwidth of this node is less than the available bandwidth carried in the received probe data packet, the intermediate node updates the available bandwidth carried in the probe data packet so that the updated probe data packet carries the available bandwidth of this node, and sends the updated probe data packet to the next hop node.
[0077] S35: If the available bandwidth of this node is greater than or equal to the available bandwidth carried in the received probe packet, the intermediate node keeps the probe packet unchanged and sends the probe packet to the next hop node.
[0078] It should be noted that S33 to S35 above apply to any intermediate node between the source node and the destination node, and the execution process is the same. Here, only one intermediate node is used as an example for illustration, but it is not limited to this. There can be multiple intermediate nodes between the source node and the destination node, and each intermediate node performs steps similar to S33 to S35.
[0079] S36: The destination node receives the probe data packet and calculates the available bandwidth of this node;
[0080] S37: The destination node generates a response data packet; wherein, if the available bandwidth of this node is less than the available bandwidth carried in the received probe data packet, the response data packet carries the available bandwidth of this node; or, if the available bandwidth of this node is greater than or equal to the available bandwidth carried in the received probe data packet, the response data packet carries the available bandwidth determined based on the available bandwidth carried in the probe data packet.
[0081] S38: The destination node returns the generated response data packet to the source node.
[0082] Please refer to Figure 4 , Figure 4 is a flowchart of a bandwidth measurement method provided by an embodiment of the present application, which is performed by a destination node, as shown in Figure 4 , the method comprises the following steps:
[0083] Step 41: The destination node receives a probe data packet sent by a source node, wherein the probe data packet comprises first information, and the first information is used to indicate a first available bandwidth determined according to an available bandwidth of the source node.
[0084] Step 42: The destination node constructs a response data packet according to the first available bandwidth and an available bandwidth of the destination node, wherein the response data packet comprises second information, and the second information is used to indicate a second available bandwidth, when the available bandwidth of the destination node is greater than or equal to the first available bandwidth, the second available bandwidth is equal to the first available bandwidth; or when the available bandwidth of the destination node is less than the first available bandwidth, the second available bandwidth is equal to the available bandwidth of the destination node.
[0085] Step 43: The destination node sends the response data packet to the source node, wherein the second available bandwidth indicated by the second information in the response data packet is used to determine an available bandwidth of a transmission link between the source node and the destination node.
[0086] Here, the probe data packet is used to measure the available bandwidth of the transmission link between the source node and the destination node. The response data packet is used for the source node to determine the available bandwidth of the transmission link between the source node and the destination node. The source node and the destination node are two nodes for interactive data, such as: the source node is a terminal, and the destination node is a network device; or the source node is a network device, and the destination node is a terminal; or the source node and the destination node are different terminals; which is not limited.
[0087] In some embodiments, the probe data packet further comprises a source IP address and a port number, a flow ID, a destination IP address and a port number, etc., so as to accurately transmit the probe data packet.
[0088] In some embodiments, the response data packet further comprises a source IP address and a port number, a flow ID, a destination IP address and a port number, etc., so as to accurately transmit the response data packet.
[0089] It is not difficult to understand that, by the embodiments of the present application, the available bandwidth of the network can be measured in real time and accurately using a small amount of probe traffic, and is not easily affected by background traffic and other noises, the proportion of the bandwidth occupied by the available bandwidth measurement traffic is small, and the network resources consumed are few.
[0090] In some embodiments, if there is no intermediate node between the source node and the destination node, the available bandwidth of the source node can be directly determined as the first available bandwidth carried in the probe data packet.
[0091] Optionally, at least one intermediate node can be contained between the source node and the destination node, and the process of sending the response data packet to the source node can comprise:
[0092] The destination node receives the probe data packet sent by the source node through the at least one intermediate node, wherein the first information in the probe data packet indicates the minimum value of the available bandwidth of the source node and the available bandwidth of the at least one intermediate node.
[0093] In this way, the minimum value of the available bandwidth of the source node and the available bandwidth of the at least one intermediate node can be informed to the destination node, so that the destination node can reasonably determine the available bandwidth of the transmission link between the destination node and the source node, and the source node can accurately determine the end-to-end available bandwidth.
[0094] It should be noted that in the embodiment, the determination / computation of the available bandwidth of the source node, the available bandwidth of the intermediate node and the available bandwidth of the destination node can refer to the description in the above embodiment, and will not be described here.
[0095] Please refer to Figure 5 In the embodiment, a system 50 for measuring available bandwidth is also provided, comprising a source node 51, at least one intermediate node 52 and a destination node 53, wherein
[0096] The source node 51 is configured to send a probe data packet to a next-hop node (i.e. a next-hop intermediate node 52), wherein the probe data packet comprises first information, and the first information is used to indicate the available bandwidth of the source node 51.
[0097] Each intermediate node 52 is configured to receive a probe data packet from a previous-hop node (e.g. a previous-hop source node 51 or a previous-hop intermediate node 52), and when the available bandwidth of the intermediate node 52 is less than the available bandwidth indicated by the first information in the probe data packet, update the probe data packet so that the first information in the updated probe data packet indicates the available bandwidth of the intermediate node 52, and forward the updated probe data packet to a next-hop node (e.g. a next-hop destination node 53 or a next-hop intermediate node 52); or when the available bandwidth of the intermediate node 52 is greater than or equal to the available bandwidth indicated by the first information in the probe data packet, keep the probe data packet unchanged, and forward the probe data packet to a next-hop node (e.g. a next-hop destination node 53 or a next-hop intermediate node 52).
[0098] The destination node 53 is configured to receive a probe data packet from a previous hop node (such as the previous hop intermediate node 52), and construct a response data packet according to the probe data packet, and send the response data packet to the source node 51; wherein the response data packet comprises second information, the second information being used to indicate a second available bandwidth, when the available bandwidth of the destination node 53 is greater than or equal to a first available bandwidth indicated by the first information in the probe data packet, the second available bandwidth is equal to the first available bandwidth; or when the available bandwidth of the destination node 53 is less than the first available bandwidth, the second available bandwidth is equal to the available bandwidth of the destination node 53.
[0099] The source node 51 is further configured to receive the response data packet, and determine the second available bandwidth as the available bandwidth of the transmission link between the source node 51 and the destination node 53.
[0100] It should be noted that, in the embodiment, the determination / computation of the available bandwidth of the source node, the available bandwidth of the intermediate node and the available bandwidth of the destination node can refer to the description in the above embodiment, which will not be repeated here.
[0101] Please refer to Figure 6 , Figure 6 is a structural schematic diagram of an available bandwidth measurement device provided by the embodiment of the present application, which is applied to a source node, such as Figure 6 As shown in the figure, the available bandwidth measurement device 60 comprises:
[0102] A first sending module 61, configured to send a probe data packet to a destination node, wherein the probe data packet comprises first information, the first information being used to indicate a first available bandwidth determined according to the available bandwidth of the source node;
[0103] A first receiving module 62, configured to receive a response data packet sent by the destination node; wherein the response data packet comprises second information, the second information being used to indicate a second available bandwidth, when the available bandwidth of the destination node is greater than or equal to the first available bandwidth, the second available bandwidth is equal to the first available bandwidth; or when the available bandwidth of the destination node is less than the first available bandwidth, the second available bandwidth is equal to the available bandwidth of the destination node;
[0104] A determining module 63, configured to determine the second available bandwidth as the available bandwidth of the transmission link between the source node and the destination node.
[0105] Optionally, the first sending module 61 is specifically configured to send the probe data packet to the destination node through at least one intermediate node; wherein the first available bandwidth is the minimum value of the available bandwidth of the source node and the available bandwidth of the at least one intermediate node.
[0106] Optionally, the available bandwidth of the source node is determined according to a maximum bandwidth of an out port of the source node and a current traffic value of the out port of the source node.
[0107] The available bandwidth of the destination node is determined according to a maximum bandwidth of an in port of the destination node and a current traffic value of the in port of the destination node.
[0108] Optionally, the available bandwidth ABW1 of the source node is calculated by using the following formula 1:
[0109]
[0110] wherein, a1 represents an available bandwidth coefficient of the source node, represents a maximum bandwidth of an out port of the source node, represents a current traffic value of the out port of the source node, and b1 represents a storage and calculation capability coefficient of the source node.
[0111] Optionally, the available bandwidth ABW2 of the destination node is calculated by using the following formula 2:
[0112]
[0113] wherein, a2 represents an available bandwidth coefficient of the destination node, represents a maximum bandwidth of an in port of the destination node, represents a current traffic value of the in port of the destination node, and b2 represents a storage and calculation capability coefficient of the destination node.
[0114] Optionally, the available bandwidth of the intermediate node is determined according to a maximum bandwidth of an in port of the intermediate node, a current traffic value of the in port of the intermediate node, a maximum bandwidth of an out port of the intermediate node and a current traffic value of the out port of the intermediate node.
[0115] Optionally, the available bandwidth ABW3 of the intermediate node is calculated by using the following formula 3:
[0116]
[0117] wherein, a3 represents an available bandwidth coefficient of the intermediate node, represents a maximum bandwidth of an in port of the intermediate node, represents a current traffic value of the in port of the intermediate node, represents a maximum bandwidth of an out port of the intermediate node, represents a current traffic value of the out port of the intermediate node, and b3 represents a storage and calculation capability coefficient of the intermediate node.
[0118] The available bandwidth measurement device 60 of the embodiment of the present application can implement the above-described Figure 1 The available bandwidth measurement method embodiment shown in the figure can implement each process and achieve the same technical effects, and thus details are not repeated here.
[0119] Please refer to Figure 7 , Figure 7 is a structural schematic diagram of an available bandwidth measurement device provided by the embodiment of the present application, which is applied to a destination node, such as Figure 7 The available bandwidth measurement device 70 includes:
[0120] The second receiving module 71 is configured to receive a probe data packet sent by a source node, wherein the probe data packet includes first information, and the first information is used to indicate a first available bandwidth determined according to an available bandwidth of the source node.
[0121] The configuration module 72 is configured to configure a response data packet according to the first available bandwidth and an available bandwidth of the destination node, wherein the response data packet includes second information, and the second information is used to indicate a second available bandwidth, when the available bandwidth of the destination node is greater than or equal to the first available bandwidth, the second available bandwidth is equal to the first available bandwidth, or when the available bandwidth of the destination node is less than the first available bandwidth, the second available bandwidth is equal to the available bandwidth of the destination node.
[0122] The second sending module 73 is configured to send the response data packet to the source node, and the second available bandwidth indicated by the second information in the response data packet is used to determine an available bandwidth of a transmission link between the source node and the destination node.
[0123] Optionally, the second receiving module 71 is specifically configured to receive the probe data packet sent by the source node through at least one intermediate node.
[0124] The first available bandwidth is the minimum value of the available bandwidth of the source node and the available bandwidth of the at least one intermediate node.
[0125] The available bandwidth measurement device 70 of the embodiment of the present application can implement the above-described Figure 4 The available bandwidth measurement method embodiment shown in the figure can implement each process and achieve the same technical effects, and thus details are not repeated here.
[0126] Optionally, as Figure 8As shown, the embodiments of the present application also provide a communication device 80, which comprises a processor 81, a memory 82, and a program or instruction stored in the memory 82 and executable in the processor 81. For example, when the communication device 80 is a source node, the program or instruction is executed by the processor 81 to implement the above-mentioned Figure 1 As shown, the embodiments of the available bandwidth measurement method implement the above-mentioned Figure 4 As shown, the embodiments of the available bandwidth measurement method implement the above-mentioned
[0127] The embodiments of the present application also provide a readable storage medium, which stores a program or instruction, and the program or instruction is executable in a processor to implement the above-mentioned Figure 1 As shown, the embodiments of the available bandwidth measurement method implement the above-mentioned Figure 4 As shown, the embodiments of the available bandwidth measurement method implement the above-mentioned
[0128] Computer readable media includes permanent and non-permanent, removable and non-removable media, which can be implemented by any method or technology to store information. The information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage device, or any other non-transmission medium that can be used to store information accessible by a computing device. According to the definition in this paper, computer readable medium does not include transitory computer readable medium, such as modulated data signal and carrier wave.
[0129] It should be noted that in this paper, the term "include", "contain" or any other variant thereof is intended to cover non-exclusive inclusion, so that the process, method, article or device including a series of elements not only includes those elements, but also includes other elements not explicitly listed, or includes elements inherent to such process, method, article or device. Without more limitations, the element defined by the statement "including a" does not exclude the presence of other identical elements in the process, method, article or device including the element.
[0130] The sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.
[0131] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a service classification device (which may be a mobile phone, computer, server, air conditioner, or network node, etc.) to execute the methods described in the various embodiments of this application.
[0132] The above description is only a preferred embodiment of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this application, and these improvements and modifications should also be considered within the scope of protection of this application.
Claims
1. A method of measuring available bandwidth, characterized by, The method comprises: a source node sends a probe data packet to a destination node, wherein the probe data packet comprises first information, and the first information is used to indicate a first available bandwidth determined according to an available bandwidth of the source node; the source node receives a response data packet sent by the destination node; wherein the response data packet comprises second information, and the second information is used to indicate a second available bandwidth; when the available bandwidth of the destination node is greater than or equal to the first available bandwidth, the second available bandwidth is equal to the first available bandwidth; or when the available bandwidth of the destination node is less than the first available bandwidth, the second available bandwidth is equal to the available bandwidth of the destination node; the source node determines the second available bandwidth as the available bandwidth of a transmission link between the source node and the destination node.
2. The method of claim 1, wherein, The source node sends a probe data packet to a destination node, comprising: the source node sends the probe data packet to the destination node through at least one intermediate node; wherein the first available bandwidth is the minimum value of the available bandwidth of the source node and the available bandwidth of the at least one intermediate node.
3. The method according to claim 1 or 2, characterized in that, The available bandwidth of the source node is determined according to the maximum bandwidth of the out port of the source node and the current traffic value of the out port of the source node; The available bandwidth of the destination node is determined according to the maximum bandwidth of the in port of the destination node and the current traffic value of the in port of the destination node.
4. The method of claim 3, wherein, The available bandwidth ABW1 of the source node is calculated by using the following formula 1: wherein a1 represents a bandwidth coefficient of the source node, represents a maximum bandwidth of an out port of the source node, represents a current traffic value of the out port of the source node, and β1 represents a storage and computing capability coefficient of the source node; and / or, The available bandwidth ABW2 of the destination node is calculated by using the following formula 2: wherein a2 represents a coefficient of available bandwidth of the destination node, represents a maximum bandwidth of an ingress port of the destination node, represents a current traffic value of the ingress port of the destination node, and β2 represents a coefficient of storage and computing capacity of the destination node.
5. The method of claim 2, wherein, The available bandwidth of the intermediate node is determined according to the maximum bandwidth of the in port of the intermediate node, the current traffic value of the in port of the intermediate node, the maximum bandwidth of the out port of the intermediate node and the current traffic value of the out port of the intermediate node.
6. The method according to claim 2 or 5, characterized in that, The available bandwidth ABW3 of the intermediate node is calculated by using the following formula 3: wherein a3 represents a coefficient of available bandwidth of the intermediate node, represents a maximum bandwidth of an ingress port of the intermediate node, represents a current traffic value of the ingress port of the intermediate node, represents a maximum bandwidth of an egress port of the intermediate node, represents a current traffic value of the egress port of the intermediate node, and β3 represents a coefficient of storage and computing power of the intermediate node.
7. A method of measuring available bandwidth, characterized by, The method comprises: a destination node receives a probe data packet sent by a source node, wherein the probe data packet comprises first information, and the first information is used to indicate a first available bandwidth determined according to an available bandwidth of the source node; the destination node constructs a response data packet according to the first available bandwidth and the available bandwidth of the destination node; wherein the response data packet comprises second information, and the second information is used to indicate a second available bandwidth; when the available bandwidth of the destination node is greater than or equal to the first available bandwidth, the second available bandwidth is equal to the first available bandwidth; or when the available bandwidth of the destination node is less than the first available bandwidth, the second available bandwidth is equal to the available bandwidth of the destination node; the destination node sends the response data packet to the source node, and the second available bandwidth indicated by the second information in the response data packet is used to determine the available bandwidth of a transmission link between the source node and the destination node.
8. The method of claim 7, wherein, The method comprises: a destination node receives a probe data packet sent by a source node, wherein the probe data packet comprises first information, and the first information is used to indicate a first available bandwidth determined according to an available bandwidth of the source node; the destination node receives the probe data packet sent by the source node through at least one intermediate node; The first available bandwidth is the minimum of the available bandwidth of the source node and the available bandwidth of the at least one intermediate node.
9. A system for measuring available bandwidth, the system comprising: The system comprises a source node, at least one intermediate node and a destination node, wherein The source node is configured to send a probe data packet to a next-hop node, the probe data packet comprising first information indicating an available bandwidth of the source node; Each intermediate node is configured to receive a probe data packet from a previous-hop node, and when the available bandwidth of the intermediate node is less than the available bandwidth indicated by the first information in the probe data packet, update the probe data packet so that the first information in the updated probe data packet indicates the available bandwidth of the intermediate node, and forward the updated probe data packet to a next-hop node; or when the available bandwidth of the intermediate node is greater than or equal to the available bandwidth indicated by the first information in the probe data packet, keep the probe data packet unchanged, and forward the probe data packet to a next-hop node; The destination node is configured to receive a probe data packet from a previous-hop node, and construct a response data packet according to the probe data packet, and send the response data packet to the source node; wherein the response data packet comprises second information indicating a second available bandwidth, and when the available bandwidth of the destination node is greater than or equal to the first available bandwidth indicated by the first information in the probe data packet, the second available bandwidth is equal to the first available bandwidth; or when the available bandwidth of the destination node is less than the first available bandwidth, the second available bandwidth is equal to the available bandwidth of the destination node; The source node is further configured to receive the response data packet, and determine the second available bandwidth as the available bandwidth of a transmission link between the source node and the destination node.
10. A bandwidth available measuring apparatus characterized by comprising: The system comprises: a first sending module configured to send a probe data packet to a destination node, the probe data packet comprising first information indicating a first available bandwidth determined according to an available bandwidth of a source node; a first receiving module configured to receive a response data packet sent by the destination node; wherein the response data packet comprises second information indicating a second available bandwidth, and when the available bandwidth of the destination node is greater than or equal to the first available bandwidth, the second available bandwidth is equal to the first available bandwidth; or when the available bandwidth of the destination node is less than the first available bandwidth, the second available bandwidth is equal to the available bandwidth of the destination node; a determining module configured to determine the second available bandwidth as the available bandwidth of a transmission link between the source node and the destination node.
11. A bandwidth available measuring apparatus characterized by comprising: The system comprises: a second receiving module configured to receive a probe data packet sent by a source node, the probe data packet comprising first information indicating a first available bandwidth determined according to an available bandwidth of the source node; constructing a response data packet according to the first available bandwidth and the available bandwidth of the destination node, wherein the response data packet comprises second information indicating a second available bandwidth, the second available bandwidth being equal to the first available bandwidth when the available bandwidth of the destination node is greater than or equal to the first available bandwidth, or the second available bandwidth being equal to the available bandwidth of the destination node when the available bandwidth of the destination node is less than the first available bandwidth; sending the response data packet to the source node, the second available bandwidth indicated by the second information in the response data packet being used to determine the available bandwidth of the transmission link between the source node and the destination node.
12. A communication device, characterized by A computer readable storage medium having stored thereon program code or instructions executable by a processor to perform the steps of the available bandwidth measurement method according to any one of claims 1 to 6, or to perform the steps of the available bandwidth measurement method according to claim 7 or 8.
13. A readable storage medium, characterized by, A computer readable storage medium having stored thereon program code or instructions executable by a processor to perform the steps of the available bandwidth measurement method according to any one of claims 1 to 6, or to perform the steps of the available bandwidth measurement method according to claim 7 or 8.
Citation Information
Patent Citations
Bandwidth control method, device and equipment and computer readable storage medium
CN112135319A
Probe packet sending method and related equipment
CN114501534A