A method for sending a probe packet and related device

By adjusting the transmission rate range based on the probe packet delay information fed back from the receiving end, the problems of high probe packet frequency and low efficiency in the existing technology are solved, realizing fast and efficient detection of available bandwidth of the transmission channel and improving service quality.

CN114501534BActive Publication Date: 2026-01-16SHANGHAI HUAWEI TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202011273389.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-11-13
Publication Date
2026-01-16
Estimated Expiration
2040-11-13

AI Technical Summary

Technical Problem

In existing technologies, the sending end estimates the available bandwidth of the transmission channel by sending probe packets through multiple transmission rates. This results in an excessively high frequency of probes, low efficiency, and a tendency to cause network congestion, which affects service quality.

Method used

The sending end uses the probe packet delay information fed back by the receiving end to adjust the sending rate range, quickly converge the sending rate of probe packets, reduce the probe frequency and number, and save network resources.

Benefits of technology

It enables rapid and efficient detection of available bandwidth in the transmission channel, reduces the frequency and number of probe packets sent, avoids network congestion, and improves the quality of service transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114501534B_ABST
    Figure CN114501534B_ABST
Patent Text Reader

Abstract

The embodiment of the application discloses a packet sending method of a detection packet; can be applied to a 5G communication network architecture, and the method comprises the following steps: a sending end sends a detection packet to a receiving end; wherein, the sending rate of the detection packet is a first rate, and the detection packet is used for detecting the available bandwidth of a transmission channel between the sending end and the receiving end; the sending end receives feedback information sent by the receiving end, and the feedback information is used for indicating time delay information corresponding to the detection packet; the sending end determines a sending rate interval according to the feedback information; the sending end determines a second rate in the sending rate interval; and the sending end updates the sending rate of the detection packet to the second rate.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] Embodiments of the present application relate to the field of communication technology, and in particular to a method for sending a probe packet and a related device thereof. BACKGROUND

[0002] With the advent of the 5th-Generation (5G) era, collaborative services will occupy an increasingly important position; for 5G collaborative services, especially close collaborative services, due to the bursty traffic and high latency requirements, a more smooth data transmission pipeline is needed; if the transmission pipeline is congested after the sending end sends traffic, it will affect the quality of service of collaborative services, and even cause call drops, which greatly affects user experience.

[0003] In the data transmission process, the sending end cannot directly obtain the transmission capacity of the transmission pipeline, and can only send traffic based on its own sending capacity; due to the real-time change of the available bandwidth of the transmission pipeline due to pipeline multiplexing and other reasons, when the sending rate of the sending end exceeds the available bandwidth of the transmission pipeline, it will cause the transmission pipeline to be congested, resulting in increased latency or packet loss; therefore, the sending end needs to probe the transmission capacity of the transmission pipeline in advance, estimate the size of the available bandwidth of the transmission pipeline, and then decide the sending rate of the traffic according to the available bandwidth of the transmission pipeline to avoid network congestion.

[0004] The existing sending end probes the available bandwidth of the transmission pipeline by constantly adjusting the sending rate of the probe packet; specifically, a plurality of transmission rates of the transmission pipeline are preset, and then the sending end traverses all the transmission rates from small to large, sends probe packets to the receiving end according to the transmission rate, and obtains the latency of the probe packet under different rates; then the available bandwidth of the transmission pipeline is determined according to the change of the latency; when estimating the available bandwidth of the transmission pipeline using the above method, since the sending end needs to traverse all the transmission rates from small to large, this will result in a high packet sending frequency and a large number of packets in the entire probing process, and the speed of obtaining the probing result is too slow, lacking real-time performance; and the transmission of a large number of probe packets will also occupy the transmission pipeline, causing congestion of service traffic and seriously affecting service quality; how to change the packet sending mode of the probe packet and more efficiently predict the available bandwidth of the transmission pipeline has become a problem to be solved. SUMMARY

[0005] Embodiments of the present application provide a method for sending a probe packet and related equipment for quickly converging the sending rate of the probe packet and more efficiently probing the available bandwidth of the transmission channel.

[0006] A first aspect of embodiments of the present application provides a method for sending a probe packet, comprising:

[0007] When transmitting data between the sending end and the receiving end, the sending end needs to use the probe packet mechanism to estimate the available bandwidth of the transmission channel; then, according to the available bandwidth of the transmission channel, the size of the flow is controlled to reduce the congestion of the transmission channel; specifically, the sending end can first send a probe packet to the receiving end at a first sending rate, and then the receiving end feeds back the time delay information of the first rate probe packet to the sending end according to the time of receiving the probe packet; then, the sending end determines the sending rate interval of the next period of sending probe packets according to the time delay information, determines a second rate in the sending rate interval, and then sends the probe packet at the second rate in the next period.

[0008] The sending end adjusts the sending rate of the probe packet in the next period according to the time delay information of the probe packet corresponding to each sending rate, so that the sending end can quickly narrow the range of the sending rate that needs to be probed without traversing all the sending rates that need to be probed, and then determine the available bandwidth of the transmission channel according to the time delay information of each rate, thereby reducing the packet sending frequency and the number of packets for probing, saving network resources, and improving the probing efficiency.

[0009] In an optional embodiment, the sending end can first determine the time delay baseline, which is the time taken by the probe packet from the sending end to the receiving end when the transmission channel is not congested; then, after obtaining the time delay information corresponding to the probe packet at the first rate, the sending end can compare the time delay information with the time delay baseline, and then determine the sending rate interval corresponding to the sending rate in the next period according to the comparison result.

[0010] The relationship between the time delay information corresponding to the probe packet at the first rate and the time delay baseline can quickly narrow the sending rate interval of the probe packet, for example, if the time delay information corresponding to the first rate is greater than the time delay baseline, it means that the probe packet at the first rate has sent congestion in the transmission process, so there is no need to send the probe packet at a sending rate greater than the first rate, and only the sending rate less than the first rate needs to be probed, which will reduce the sending frequency and the number of probe packets and improve the probing efficiency.

[0011] In an optional embodiment, the sending end determines the time delay baseline by sending a low-speed probe packet to the receiving end; that is, according to the transmission capacity of the sending end and the receiving end, the sending end sends a probe packet at a very low rate to the receiving end, which can be understood as that if the number of probe packets sent by the sending end to the receiving end is small and the rate is very low in the probing process, it can be considered that it will not be congested, so the time taken for the normal transmission of the probe packet to the receiving end can be determined as the time delay baseline.

[0012] In an optional implementation, when the sending rate range of the probe packet is continuously narrowed, if the difference between the sending rate of the next period and the sending rate of the previous period falls within the preset accuracy range, the sending of the probe packet is stopped and the probe mechanism is exited.

[0013] In an optional implementation, it can be understood that when the sending of the probe packet is stopped, the current sending rate of the sending end is the maximum sending rate obtained through multiple probe processes, and thus the available bandwidth of the transmission channel can be estimated according to the sending rate, that is, the maximum flow that can be carried by the transmission channel in the case of no congestion.

[0014] In an optional implementation, after the available bandwidth of the transmission channel is estimated, the size of the sending flow can be controlled according to the available bandwidth, so as to reduce the possibility of congestion in the transmission channel.

[0015] A second aspect of the embodiment of the application provides a sending device, which comprises:

[0016] a sending unit configured to send a probe packet to a receiving end, wherein the sending rate of the probe packet is a first rate, and the probe packet is used to probe the available bandwidth of a transmission channel between the sending device and the receiving end;

[0017] a receiving unit configured to receive feedback information sent by the receiving end, wherein the feedback information is used to indicate time delay information corresponding to the probe packet;

[0018] a determining unit configured to determine a sending rate interval according to the feedback information;

[0019] the determining unit is further configured to determine a second rate in the sending rate interval;

[0020] the sending unit is further configured to update the sending rate of the probe packet to the second rate.

[0021] In an optional implementation, the determining unit is specifically configured to determine a time delay baseline, the time delay baseline is the time taken by a data packet to be transmitted from the sending device to the receiving end when the transmission channel does not occur congestion, to judge the size of the time delay information corresponding to the probe packet and the time delay baseline, and to determine the sending rate interval according to the judgment result.

[0022] In an optional implementation, the sending unit is further configured to send a low-speed probe packet to the receiving end, wherein the transmission rate of the low-speed probe packet is less than the available bandwidth of the transmission channel.

[0023] The determining unit is specifically configured to acquire time delay information corresponding to the low-speed probe packet; and determine the time delay baseline according to the time delay information corresponding to the low-speed probe packet.

[0024] In an optional implementation, the sending unit is further configured to determine whether a difference between the first rate and the second rate is less than a prediction accuracy; and if the difference is less than the prediction accuracy, the sending unit stops sending the probe packet.

[0025] In an optional implementation, the determining unit is further configured to determine the available bandwidth of the transmission channel according to a current sending rate of the probe packet when the sending unit stops sending the probe packet.

[0026] In an optional implementation, the sending unit is further configured to send service traffic to the receiving end according to the available bandwidth of the transmission channel.

[0027] The third aspect of the present application provides a sending device, comprising at least one processor and a memory, the memory stores computer program instructions executable on the processor, when the computer program instructions are executed by the processor, the sending device executes the method described in the first aspect or any one of the possible implementation manners of the first aspect.

[0028] The fourth aspect of the present application provides a chip or a chip system, which comprises at least one processor and a communication interface, the communication interface and the at least one processor are interconnected through a line, the at least one processor is used to run computer programs or instructions to perform the probe packet sending method described in any one of the first aspect to the possible implementation manners of the first aspect;

[0029] The communication interface in the chip can be an input / output interface, a pin or a circuit, etc.

[0030] In a possible implementation, the chip or the chip system described in the present application further comprises at least one memory, and the at least one memory stores instructions. The memory can be a storage unit inside the chip, such as a register, a cache, etc., or a storage unit of the chip (such as a read-only memory, a random access memory, etc.).

[0031] The fifth aspect of the embodiment of the present application provides a computer readable storage medium, and the computer readable storage medium stores a computer program, when the computer program is executed on a computer, the computer program causes the computer to execute the probe packet sending method described in the first aspect.

[0032] From the above technical solutions, it can be seen that the embodiments of the present application have the following advantages:

[0033] Using the application, the sending end continuously narrows the range of the sending rate interval according to the time delay information of the probe packet sent by the receiving end, and then determines the sending rate of the next probe packet in the range of the sending rate interval, so that the sending end can quickly converge the sending rate without traversing all transmission rates, and more efficiently and conveniently estimate the available bandwidth of the transmission channel; meanwhile, the sending frequency and the sending quantity of the probe packet are reduced, and network resources are saved. BRIEF DESCRIPTION OF DRAWINGS

[0034] Figure 1 A schematic diagram of a 5G network architecture is provided for an embodiment of the application.

[0035] Figure 2 A schematic diagram of the structure of a network transmission system is provided for an embodiment of the application.

[0036] Figure 3 A flowchart of a probe packet sending method is provided for an embodiment of the application.

[0037] Figure 4 A schematic diagram of the structure of a sending device is provided for an embodiment of the application.

[0038] Figure 5 A schematic diagram of the structure of another sending device is provided for an embodiment of the application. DETAILED DESCRIPTION

[0039] Embodiments of the application provide a probe packet sending method and related devices for quickly converging the sending rate of the probe packet and more efficiently detecting the available bandwidth of the transmission channel.

[0040] The technical solutions in the application will be described in detail below with reference to the drawings in the application. Obviously, the described embodiments are only some of the embodiments of the application, not all the embodiments.

[0041] The terms "first", "second", "third", "fourth" and the like (if any) in the specification and claims of the application and the above drawings are used to distinguish similar objects, and do not necessarily indicate a specific order or sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, so that the embodiments described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion, for example, a process, method, system, product or device that includes a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but can include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0042] Figure 1This is a schematic diagram of the 5G network architecture of this application; as shown. Figure 1 As shown, edge devices (such as base stations) previously transmitted data through a transmission channel, and multiple base stations may share a single transmission channel when transmitting data. Generally, base stations cannot directly know the transmission capacity of the transmission channel; instead, they transmit traffic based on their own transmission capacity. For example, base station 1 (gNB1), base station 2 (gNB2), base station 3 (gNB3), and base station 4 (gNB4) can each transmit 25G of traffic. Therefore, when gNB1 and gNB3 exchange data, gNB1 can send 25G of traffic to gNB3 based on the capabilities of both base stations. However, if the transmission channel can only carry 20G of traffic, or if the available bandwidth of the transmission channel changes continuously due to pipe multiplexing (gNB2 and gNB4), then transmission channel congestion may occur, leading to increased packet transmission latency and even packet loss.

[0043] With the rapid development of mobile internet, more and more devices will connect to mobile networks. This not only requires the network to withstand the surge in mobile data traffic but also demands faster and more reliable data transmission services. In 5G technology, collaborative services will become increasingly prominent, especially closely coordinated services. These services inherently involve large bursts of traffic and have high latency requirements. If packet loss or increased latency occurs in the transmission channel due to congestion after the base station sends out collaborative service data traffic, it will greatly affect the quality of service and may even lead to dropped calls, impacting user experience. Therefore, before sending data traffic, the base station needs to detect the transmission capacity of the transmission channel, estimate the available bandwidth, and then control its own data traffic transmission rate based on the available bandwidth. This can greatly reduce the possibility of transmission channel congestion, ensure smooth transmission, and improve service transmission quality.

[0044] The existing transmission channel available bandwidth estimation scheme is to send probe packets of different rates by traversing multiple transmission rates, and then to estimate the transmission channel available bandwidth through the delay corresponding to each rate. Specifically, the sending end reports its own transmission port capability, for example, 25G, and determines the transmission rate according to the transmission accuracy, for example, the transmission rates are determined to be 1Gbps to 25Gbps from small to large; then the sending end needs to change the transmission rate of the probe packet and traverse all the transmission rates. That is, the sending rate of the probe packet sent by the sending end to the receiving end is 1Gbps to 25Gbps, and the receiving end determines the delay of the probe packet at each rate after receiving the probe packet of different rates. It can be understood that when the sending rate of the sending end reaches a certain rate, the delay of the probe packet suddenly increases, so it can be considered that the transmission channel is congested, and the rate is the available bandwidth of the transmission channel. The transmission rate of the probe packet can be changed by the same packet sending interval but different probe packet sizes, or the same probe packet size but different packet sending intervals, and so on.

[0045] Using the above method to estimate the available bandwidth of the transmission channel, the sending end needs to traverse all the transmission rates, which leads to a long packet sending period, thus resulting in a lack of real-time of the obtained probe result and low probe efficiency. At the same time, due to the high sending packet frequency of the sending end, too many probe packets are sent, which will easily cause the transmission channel to be congested and affect the transmission of business traffic. Therefore, there is an urgent need for a more efficient and simple probe packet sending method.

[0046] Based on the above problems, the embodiments of the present application provide a probe packet sending method and related equipment for quickly converging the sending rate of the probe packet and more efficiently detecting the available bandwidth of the transmission channel. The method can be applied to the interface between base stations, including but not limited to Xn interface, eXn interface and F1 interface; can also be applied to the S1, NG interface between the base station and the core network or the CPRI, eCPRI interface between the building base band unite (BBU) and the active antenna unit (AAU); can also be applied to the available bandwidth detection between different modules in the equipment and the available bandwidth detection between the intermediate transmission equipment in the network, without limitation.

[0047] Figure 2 A structure diagram of a network transmission system is provided for the embodiments of the present application; as Figure 2As shown, the sending end includes a control module and a session sending module, the receiving end includes a feedback module and a session receiving module, there are two logical channels between the sending end and the receiving end, which are a detection flow channel and a control flow channel; wherein the detection flow channel is located in the data plane and is used to perform transmission of detection packets; and the control flow channel can be located in the data plane or the control plane and is used for the sending end and the receiving end to interact and manage the detection task; for example, the receiving end can send its transmission capability information to the sending end through the control flow channel and can also send time delay information and the like.

[0048] Figure 3 A flowchart of a detection packet sending method provided by an embodiment of the application is shown in Figure 3 As shown, the detection packet sending method includes the following steps:

[0049] 301. The sending end acquires the transmission port capability of the receiving end.

[0050] When the sending end and the receiving end perform transmission of service data, the receiving end needs to report its transmission port capability to the sending end through the control flow channel, so that the sending end can determine the transmission rate of the data packet based on its own transmission port capability and the transmission port capability of the receiving end; for example, if the transmission port capacity of the sending end and the receiving end is both 25G, then the sending end sends data packets to the receiving end at a rate not exceeding 25Gbps, otherwise, the instantaneous flow will be greater than the transmission port capacity of the receiving end, causing packet loss.

[0051] Since the transmission capability of the transmission channel between the sending end and the receiving end is unknown, in order to avoid congestion of the transmission channel as much as possible, the sending end estimates the available bandwidth of the transmission channel through the detection packet mechanism before sending service flow to the receiving end; specifically, the sending end transmits detection packets to the receiving end at different sending rates, and then judges the sending rate at which the transmission channel will be congested through the time delay of the detection packet, and finally estimates the available bandwidth of the transmission channel; for example, if the sending rate of the sending end to the receiving end is 12.5Gbps, the time delay of the detection packet suddenly increases greatly, then it can be estimated that the available bandwidth of the transmission channel is 12.5Gbps, and then the sending end determines the sending rate of the service flow according to the estimated available bandwidth, so as to reduce the possibility of congestion of the service flow in the transmission channel and avoid too large time delay of the service flow.

[0052] 302. The sending end sends low-speed detection packets to the receiving end according to the transmission port capability of the receiving end.

[0053] After the sending end obtains the transmission port capability of the receiving end, it determines a lower sending rate of the probe packet according to the transmission port capability, the purpose of which is to detect the time delay of the probe packet from the sending end to the receiving end when the transmission channel is not congested, so the transmission rate of the low-speed probe packet is actually required to be less than the available bandwidth of the transmission channel; for example, when the transmission port capacity of the sending end and the receiving end is both 25G, the lower sending rate can be determined as 1Mbps, and then the sending end sends the low-speed probe packet to the receiving end at the sending rate of 1Mbps.

[0054] 303. The receiving end receives the low-speed probe packet and determines the time delay information of the low-speed probe packet.

[0055] After the receiving end receives the low-speed probe packet, it needs to determine the time delay information of the low-speed probe packet, which can be understood as a reference. When the time delay of the probe packet at a certain sending rate is much longer than the time delay of the low-speed probe packet, it means that the transmission channel is congested. If the time delay of the probe packet at a certain sending rate is close to the time delay of the low-speed probe packet, it means that the transmission channel is not congested.

[0056] 304. The receiving end sends the time delay information of the low-speed probe packet to the sending end.

[0057] After the sending end determines the time delay information of the low-speed probe packet, it feeds back the time delay information of the low-speed probe packet to the receiving end.

[0058] 305. The sending end determines the time delay baseline according to the time delay information of the low-speed probe packet.

[0059] For example, the sending end can determine the time delay baseline through the time delay information of the low-speed probe packet, which represents the time delay of the data packet when the transmission channel is not congested, i.e. the transmission rate of the data packet is within the available bandwidth of the transmission channel. In this way, the sending end can continuously adjust the sending rate of the probe packet, compare the time delay of the probe packet at different sending rates with the time delay baseline, and then continuously shorten the sending range of the sending rate according to the comparison result, so as to estimate the available bandwidth of the transmission channel without traversing all the sending rates.

[0060] For example, the determination of the time delay baseline can be performed not only by the sending end but also by the receiving end; that is, the sending end sends a low-speed probe packet to the receiving end, the receiving end determines the time delay baseline according to the time delay of the low-speed probe packet, and saves the time delay baseline; when the sending end sends a probe packet of a different speed to the receiving end again, the receiving end judges the size relationship between the probe packet of the different speed and the time delay baseline, and finally feeds back the judgment result to the sending end; in this way, the sending end can also adjust the sending speed of the probe packet according to the judgment result, and continuously shorten the sending range of the sending speed; it can be understood that in this example, the determination of the time delay baseline only changes the subject of execution, and does not affect the whole scheme.

[0061] 306. The sending end sends a probe packet to the receiving end at a first speed.

[0062] After the time delay baseline is determined, the sending end starts to send a probe packet to the receiving end to probe the available bandwidth of the transmission channel. First, the sending end determines that the sending speed of the probe packet is a first speed, and then sends the probe packet to the receiving end at the first speed. For example, in the above example, the transmission port capacity of the sending end and the receiving end is both 25G, so it can be determined that the first sending speed is 22Gbps, that is, the sending speed of the probe packet needs to be determined within the transmission port capacity of the sending end and the receiving end; it can be understood that the sending end can send the probe packet to the receiving end at a larger sending speed as the starting point of the probing process, or send the probe packet to the receiving end at a smaller sending speed as the expectation of the probing process, and the specific sending speed is not limited.

[0063] 307. The receiving end determines the time delay information corresponding to the probe packet of the first speed.

[0064] After receiving the probe packet at the first speed, the receiving end can determine the time delay information of the probe packet according to the receiving time of the probe packet.

[0065] 308. The receiving end sends the time delay information corresponding to the probe packet of the first speed to the sending end.

[0066] After determining the time delay information of the probe packet at the first speed, the receiving end feeds back the time delay information to the sending end.

[0067] 309. The sending end judges the size of the time delay information corresponding to the probe packet of the first speed and the time delay baseline.

[0068] The sending end adjusts the range of the sending rate by judging the size of the time delay information corresponding to the probe packet of the first rate and the time delay baseline. For example, in the above example, if the first rate is 22 Gbps, the corresponding time delay information is 10 ms, and the time delay baseline is 5 ms, it indicates that when the sending end sends the probe packet to the receiving end at a rate of 22 Gbps, congestion has occurred compared with the probe packet rate corresponding to the time delay baseline. Therefore, the sending end can determine the range of the sending rate as 0 to 22 Gbps, and no longer needs to send the probe packet at a sending rate of 22 Gbps to 25 Gbps. In this way, the number of probe packets sent by the sending end is reduced, and the sending rate can be quickly converged.

[0069] It can be understood that when the receiving end determines the time delay baseline, the receiving end can also judge the size of the time delay information corresponding to the probe packet of the first rate and the time delay baseline, and then feed back the judgment result to the sending end. Then, the sending end can adjust the sending rate of the probe packet according to the judgment result fed back by the receiving end.

[0070] 310. The sending end determines the sending rate interval according to the judgment result.

[0071] It can be understood that the sending end continuously narrows the interval of the sending rate according to the size relationship between the time delay information corresponding to the probe packet of different rates and the time delay baseline, and finally obtains the maximum sending rate that does not cause congestion of the transmission channel, and estimates the available bandwidth of the transmission channel according to the maximum sending rate.

[0072] 311. The sending end determines the second rate in the sending rate interval.

[0073] After the sending end determines the sending rate interval, it needs to select a second rate in the sending rate interval to send the probe packet to continue to detect the available bandwidth of the transmission channel. For example, the determination of the second rate can be determined by the bisection method, equal ratio, equal amount, etc. The specific determination is not limited. For example, the sending end determines that the sending rate interval is 0 Gbps to 12 Gbps, and according to the bisection method, the second rate can be determined as 6 Gbps. For another example, the sending rate interval is 6 Gbps to 22 Gbps, and the equal amount step is 2 Gbps. Therefore, the second rate can be determined as 8 Gbps or 20 Gbps.

[0074] 312. The sending end updates the sending rate of the probe packet to the second rate.

[0075] 313. The sending end judges whether the difference between the first rate and the second rate is less than the prediction accuracy. If it is less, step 312 is performed. If it is greater, step 313 is performed.

[0076] The sending end has a prediction accuracy when estimating the available bandwidth of the transmission channel by the method, that is, the error of the available bandwidth estimated by the sending end should not exceed the prediction accuracy; the sending end continuously narrows the range of the sending rate during the detection process. It can be understood that the second rate will become an endpoint value of the next sending rate interval. If the difference between the first rate and the second rate is less than the prediction accuracy, the detection process does not need to continue. For example, the first rate is 13 Gbps, the sending end determines that the sending rate interval is 13 Gbps to 14 Gbps, and the determined second rate is 13.5 Gbps. The difference between 13.5 Gbps and 13 Gbps is only 0.5 Gbps. If the prediction accuracy can allow an error of 1 Gbps, it is not necessary to continue to detect. At this time, the sending end can exit the detection process and determine that the available bandwidth of the transmission channel is 13 Gbps, 13.5 Gbps or 14 Gbps.

[0077] 314、The sending end stops sending the detection packet.

[0078] After the sending end stops sending the detection packet, the sending end estimates the available bandwidth of the transmission channel according to the sending rate interval.

[0079] 315、The sending end sends the detection packet to the receiving end by the second rate.

[0080] If the difference between the first rate and the second rate is greater than the prediction accuracy, the detection process needs to continue, and the actual available bandwidth value of the transmission channel is continuously approached. The sending end continues to send the detection packet to the receiving end by the second rate, and then continues to narrow the range of the sending rate interval according to the time delay information fed back by the receiving end. After multiple cycles, if the difference between the obtained sending rate and the previous sending rate is less than the prediction accuracy, the detection process is exited, and the sending of the detection packet is stopped.

[0081] In the embodiment, the sending end continuously narrows the range of the sending rate interval according to the time delay information of the detection packet sent by the receiving end, and then determines the sending rate of the next detection packet in the sending rate interval. In this way, the sending end can quickly converge the sending rate without traversing all transmission rates, and more efficiently and conveniently estimate the available bandwidth of the transmission channel. At the same time, the sending frequency and the number of the detection packet are reduced, and the network resources are saved.

[0082] Based Figure 3 Based on the embodiment shown in FIG. 8, the detection packet sending method based on the dichotomy will be described below:

[0083] It can be understood that the dichotomy means that the value taken in a certain interval is the middle value of the interval. Therefore, in the sending process of the probe packet, when the sending end determines the sending rate interval, the middle value of the sending rate interval can be taken as the sending rate of the next sending probe packet. Therefore, in the process of detecting the available bandwidth of the transmission channel by the probe packet, the number of times of taking values can be determined according to the prediction accuracy, for example, if the prediction accuracy is 10%, the number of times n of sending packets satisfies 1 / (2 n )<10% can be satisfied; for example, if the transmission port capacity of the sending end and the receiving end is 25G, the sending rate range can be determined as 0 to 25Gbps, and then the first value is 12.5Gbps, and the sending end sends the probe packet to the receiving end at a sending rate of 12.5Gbps. If the time delay of the probe packet is less than or equal to the time delay baseline at the rate, the sending rate interval is updated to 12.5Gbps to 25Gbps, and the second value is 18.75Gbps. The sending end sends the probe packet to the receiving end at a sending rate of 18.75Gbps, and then adjusts the sending rate interval according to the time delay judgment result again, until the value n times, and finally estimates the available bandwidth of the transmission channel according to the transmission rate interval that does not exceed the prediction accuracy.

[0084] Figure 4 A structure diagram of a sending device provided by an embodiment of the present application is shown in FIG. 1, which includes: Figure 4

[0085] A sending unit 401 is configured to send a probe packet to a receiving end, wherein the sending rate of the probe packet is a first rate, and the probe packet is used to detect the available bandwidth of a transmission channel between the sending device and the receiving end.

[0086] A receiving unit 402 is configured to receive feedback information sent by the receiving end, wherein the feedback information is used to indicate time delay information corresponding to the probe packet.

[0087] A determining unit 403 is configured to determine a sending rate interval according to the feedback information.

[0088] The determining unit 403 is further configured to determine a second rate in the sending rate interval.

[0089] The sending unit 401 is further configured to update the sending rate of the probe packet to the second rate.

[0090] ​The determination unit 403 is specifically configured to determine a time delay baseline, the time delay baseline being a time taken by a data packet to be transmitted from the sending device to the receiving end when the transmission channel is not congested; determine a size of time delay information corresponding to the probe packet and the time delay baseline; and determine the sending rate interval according to a result of the determination.

[0091] The sending unit 401 is further configured to send a low-speed probe packet to the receiving end, the transmission rate of the low-speed probe packet being less than the available bandwidth of the transmission channel.

[0092] The determination unit 403 is specifically configured to obtain time delay information corresponding to the low-speed probe packet; and determine the time delay baseline according to the time delay information corresponding to the low-speed probe packet.

[0093] The sending unit 401 is further configured to determine whether a difference between the first rate and the second rate is less than a prediction accuracy; and if the difference is less than the prediction accuracy, the sending unit 401 stops sending the probe packet.

[0094] The determination unit 403 is further configured to determine the available bandwidth of the transmission channel according to the current sending rate of the probe packet when the sending unit 401 stops sending the probe packet.

[0095] The sending unit 401 is further configured to send service traffic to the receiving end according to the available bandwidth of the transmission channel.

[0096] Please refer to Figure 5 Another structure schematic diagram of a sending device 500 provided by an embodiment of the present application is provided, the network model development device 500 includes a processor 501, a memory 502, and a communication interface 503.

[0097] The processor 501, the memory 502, and the communication interface 503 are connected to each other through a bus; the bus can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, and a control bus, etc. For the convenience of representation, Figure 5 In the figure, only one thick line is used to represent the bus, but it does not mean that there is only one bus or only one type of bus.

[0098] The memory 502 can include a volatile memory, such as a random-access memory (RAM), and / or can include a non-volatile memory, such as a flash memory, a hard disk drive (HDD), or a solid-state drive (SSD). The memory 502 can also include a combination of the above-mentioned types of memories.

[0099] The processor 501 can be a central processing unit (CPU), a network processor (NP), or a combination of CPU and NP. The processor 501 can further include a hardware chip. The hardware chip can be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The PLD can be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.

[0100] The communication interface 503 can be a wired communication interface, a wireless communication interface, or a combination thereof. The wired communication interface can be an Ethernet interface. The Ethernet interface can be an optical interface, an electrical interface, or a combination thereof. The wireless communication interface can be a WLAN interface, a cellular network communication interface, or a combination thereof.

[0101] The processor 501 is configured to run computer programs or instructions in the memory 502 to perform the following functions: Figure 3 A packet sending method in any possible implementation of the embodiments shown.

[0102] Embodiments of the present application also provide a chip or a chip system. The chip or the chip system includes at least one processor and a communication interface. The communication interface and the at least one processor are interconnected through a line. The at least one processor is configured to run computer programs or instructions to perform the following functions: Figure 3 A packet sending method described in any possible implementation of the embodiments shown.

[0103] The communication interface in the chip can be an input / output interface, a pin, or a circuit, etc.

[0104] In a possible implementation, the chip or the chip system described above in the present application further includes at least one memory in which instructions are stored. The memory can be a storage unit inside the chip, such as a register, a cache, etc., or a storage unit of the chip (such as a read-only memory, a random access memory, etc.).

[0105] The embodiments of the present application further provide a computer storage medium for storing the computer software instructions for the sending device, which includes the program designed for the sending device.

[0106] The embodiments of the present application further provide a computer program product including computer software instructions, which can be loaded by a processor to implement the processes in the packet sending method of the probe packet.

[0107] In the above embodiments, the system, device and unit described above can be realized by software, hardware, firmware or any combination thereof, in whole or in part. When realized by software, the system, device and unit described above can be realized in the form of a computer program product, in whole or in part.

[0108] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the system, device and unit described above can refer to the corresponding process in the foregoing method embodiments, which will not be described here.

[0109] In the several embodiments provided in the present application, it should be understood that the disclosed system, device and method can be implemented by other ways. For example, the device embodiments described above are only schematic, and the division of the units is only a logical function division, and there can be another division manner in actual implementation, for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the units shown or discussed can be indirect coupling or communication connection through some interface, device or unit, and can be electrical, mechanical or other forms.

[0110] The units described as separate components can or can not be physically separate, and the components shown as units can or can not be physical units, i.e., they can be located in one place, or can be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the embodiments of the present application.

[0111] In addition, each function unit in each embodiment of the present application can be integrated in one processing unit, or each unit can be physically present separately, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or in the form of a software function unit.

[0112] When the integrated unit is realized in the form of a software function unit and sold or used as an independent product, it can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the present application, essentially or in the form of a contribution to the prior art, or all or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium, and includes several instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in each embodiment of the present application. The foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM, read-only memory), a random access memory (RAM, random access memory), a magnetic disk or an optical disk, and various media that can store program codes.

Claims

1. A packet transmission method for detecting a packet, characterized by, The method comprises: The sending end sends a probe packet to the receiving end; wherein the sending rate of the probe packet is a first rate, the probe packet is used to probe the available bandwidth of a transmission channel between the sending end and the receiving end, the first rate is determined within the transmission port capability range of the sending end and the receiving end, there is a probe stream channel and a control stream channel between the sending end and the receiving end, the probe stream channel is used to perform transmission of the probe packet, and the control stream channel is used for the sending end and the receiving end to interact; The sending end receives feedback information sent by the receiving end through the control stream channel, and the feedback information is used to indicate the time delay information corresponding to the probe packet; The sending end determines a sending rate interval according to the feedback information; The sending end determines a second rate within the sending rate interval; The sending end updates the sending rate of the probe packet to the second rate; The sending end determines a sending rate interval according to the feedback information, which comprises: The sending end determines a time delay baseline; the time delay baseline is the time taken for a data packet to be transmitted from the sending end to the receiving end when the transmission channel is not congested; The sending end judges the size of the time delay information corresponding to the probe packet and the time delay baseline; The sending end determines the sending rate interval according to the judgment result; The sending end determines a time delay baseline, which comprises: The sending end sends a low-speed probe packet to the receiving end; the transmission rate of the low-speed probe packet is less than the available bandwidth of the transmission channel, and the transmission rate of the low-speed probe packet is determined according to the transmission port capability of the receiving end, which is sent by the receiving end to the sending end through the control stream channel; The sending end obtains the time delay information corresponding to the low-speed probe packet; The sending end determines the time delay baseline according to the time delay information corresponding to the low-speed probe packet.

2. The method of claim 1, wherein, The method further comprises: Judging whether the difference between the first rate and the second rate is less than a prediction accuracy; If it is less than the prediction accuracy, the sending end stops sending the probe packet.

3. The method of claim 2, wherein, The method further comprises: When the sending end stops sending the probe packet, the sending end determines the available bandwidth of the transmission channel according to the current sending rate of the probe packet.

4. The method of claim 3, wherein, The method further comprises: The sending end sends service traffic to the receiving end according to the available bandwidth of the transmission channel.

5. A transmitting device, comprising: The sending device is applied to a sending end, and the sending device comprises: A sending unit is configured to send a probe packet to a receiving end; wherein the sending rate of the probe packet is a first rate, the probe packet is used to probe the available bandwidth of a transmission channel between the sending device and the receiving end, the first rate is determined within the transmission port capability range of the sending end and the receiving end, there is a probe stream channel and a control stream channel between the sending end and the receiving end, the probe stream channel is used to perform transmission of the probe packet, and the control stream channel is used for the sending end and the receiving end to interact; receive a feedback information sent by the receiving end through the control flow channel, the feedback information being used to indicate time delay information corresponding to the probe packet; determine a sending rate interval according to the feedback information; the determining unit is further configured to determine a second rate within the sending rate interval; the sending unit is further configured to update the sending rate of the probe packet to the second rate; the determining unit is specifically configured to determine a time delay baseline, the time delay baseline being a time used for transmitting a data packet from the sending device to the receiving end when the transmission channel is not congested; judge sizes of the time delay information corresponding to the probe packet and the time delay baseline; and determine the sending rate interval according to a judgment result; the sending unit is further configured to send a low-speed probe packet to the receiving end, the transmission rate of the low-speed probe packet being less than the available bandwidth of the transmission channel, the transmission rate of the low-speed probe packet being determined according to a transmission port capability of the receiving end, and the transmission port capability of the receiving end being sent by the receiving end to the sending device through the control flow channel; the determining unit is specifically configured to obtain time delay information corresponding to the low-speed probe packet; and determine the time delay baseline according to the time delay information corresponding to the low-speed probe packet.

6. The transmitting device of claim 5, wherein, the sending unit is further configured to judge whether a difference between the first rate and the second rate is less than a prediction accuracy; and if the difference is less than the prediction accuracy, the sending unit stops sending the probe packet.

7. The transmitting device of claim 6, wherein, the determining unit is further configured to determine the available bandwidth of the transmission channel according to a current sending rate of the probe packet when the sending unit stops sending the probe packet.

8. The transmitting device of claim 7, wherein, the sending unit is further configured to send service traffic to the receiving end according to the available bandwidth of the transmission channel.

9. A transmitting device comprising: at least one processor and a memory, the memory storing computer-executable instructions that, when executed by the processor, cause the processor to perform the method of any one of claims 1-4.

10. A computer readable storage medium storing one or more computer-executable instructions, wherein: when the computer-executable instructions are executed by the processor, the processor performs the method of any one of claims 1-4.

Citation Information

Patent Citations

  • End-to-end low available bandwidth measuring method

    CN101026509A

  • Available bandwidth detecting method, system and device

    CN101222380A

  • Method, apparatus and device for detection of available bandwidth of network link

    CN108011771A