A multi-stream transmission control method, apparatus, device, medium and program product

CN122845508APending Publication Date: 2026-09-29BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610967638.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-06-30
Publication Date
2026-09-29

AI Technical Summary

Technical Problem

然而,在上述多个发送端到同一用户端的并发传输流场景下,由于多个独立流共享同一瓶颈资源,如果继续使用上述发送端独立调整各自发送速率的拥塞控制方式,会放大带宽波动,导致汇聚到用户的末端链路成为系统性能瓶颈

Benefits of technology

[0010]本文提供的技术方案与现有技术相比至少具有如下优点:

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122845508A_ABST
    Figure CN122845508A_ABST
Patent Text Reader

Abstract

This paper relates to a multi-stream transmission control method, apparatus, device, medium, and program product. The method includes: acquiring network state information corresponding to each sub-stream in an aggregated stream, wherein the network state information includes queuing delay and rate. Then, based on the network state information corresponding to each sub-stream, the network state information of the aggregated stream is determined. In response to the network state information of the aggregated stream reaching a first critical condition, the rates of each sub-stream in the aggregated stream are adjusted respectively. The first critical condition is used to characterize that the throughput growth rate of the aggregated stream is less than a preset first threshold and the queuing delay growth rate is greater than a preset second threshold. Based on this first critical condition boundary signal point, this paper achieves coordinated control of each sub-stream in the aggregated stream, thereby reducing the end-link bottleneck problem caused by individual control of each stream.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This article relates to the field of network transmission technology, and in particular to a multi-stream transmission control method, apparatus, equipment, medium, and program product. Background Technology

[0002] With the explosive growth of video traffic and the continued expansion of the video-on-demand market, bandwidth costs for content distribution have become a core component of operating costs. To alleviate bandwidth cost pressures, peer-to-peer content delivery networks (PCDNs) are widely adopted, relying on the idle resources of distributed heterogeneous edge nodes to provide users with on-demand content transmission services. In this network architecture, concurrent transmission streams from multiple senders to the same user converge at the user's endpoint, sharing the same capacity-constrained bottleneck resources, leading to severe cross-stream congestion risks.

[0003] In related technologies, each sender independently adjusts its transmission rate using its own congestion control method to fully utilize bandwidth and quickly match the user's playback progress. However, in the scenario of concurrent transmission streams from multiple senders to the same user, since multiple independent streams share the same bottleneck resource, continuing to use the congestion control method where each sender independently adjusts its own transmission rate will amplify bandwidth fluctuations, causing the final link converging to the user to become the system performance bottleneck. Summary of the Invention

[0004] To address, or at least partially address, the aforementioned technical problems, this paper provides a multi-stream transmission control method, apparatus, device, medium, and program product.

[0005] Firstly, a multi-stream transmission control method is provided, the method comprising: Obtain the network status information corresponding to each sub-stream in the aggregated stream; the network status information includes queuing delay and rate. Based on the network state information corresponding to each sub-flow, the network state information of the aggregated flow is determined; In response to the network state information of the aggregated flow reaching a first critical condition, the rate of each sub-flow in the aggregated flow is adjusted; the first critical condition is used to characterize that the throughput growth rate of the aggregated flow is less than a preset first threshold and the queuing delay growth rate is greater than a preset second threshold.

[0006] Secondly, a multi-stream transmission control device is provided, the device comprising: The first acquisition module is used to acquire network status information corresponding to each sub-stream in the aggregated stream; the network status information includes queuing delay and rate. The first determining module is used to determine the network state information of the aggregated stream based on the network state information corresponding to each of the sub-streams. The first adjustment module is used to adjust the rate of each sub-flow in the aggregated flow in response to the network state information of the aggregated flow reaching a first critical condition; the first critical condition is used to characterize the throughput growth rate of the aggregated flow being less than a preset first threshold and the queuing delay growth rate being greater than a preset second threshold.

[0007] Thirdly, an electronic device is provided, comprising: a processor; a memory for storing executable instructions of the processor; the processor being configured to read the executable instructions from the memory and execute the instructions to implement the multi-stream transmission control method provided herein.

[0008] Fourthly, a computer-readable storage medium is provided, the storage medium storing a computer program for performing the multi-stream transmission control method provided in the embodiments herein.

[0009] Fifthly, a computer program product is provided, the computer program product comprising a computer program / instruction, which, when executed by a processor, implements the above-described method.

[0010] The technical solution provided in this paper has at least the following advantages compared with existing technologies: The multi-stream transmission control method presented in this paper first acquires the network state information corresponding to each sub-stream in the aggregated stream, whereby the network state information includes queuing delay and rate. Then, based on the network state information corresponding to each sub-stream, the network state information of the aggregated stream is determined. In response to the network state information of the aggregated stream reaching a first critical condition, the rates of each sub-stream in the aggregated stream are adjusted accordingly. The first critical condition characterizes the throughput growth rate of the aggregated stream being less than a preset first threshold and the queuing delay growth rate being greater than a preset second threshold. Based on this first critical condition boundary signal point, this paper achieves coordinated control of each sub-stream in the aggregated stream, thereby reducing the end-link bottleneck problem caused by individual stream control. Attached Figure Description

[0011] The above and other features, advantages, and aspects of the embodiments herein will become more apparent when taken in conjunction with the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.

[0012] Figure 1 A flowchart of a multi-stream transmission control method provided for embodiments of this document; Figure 2A schematic diagram of a multi-stream transport architecture provided for embodiments of this article; Figure 3 A schematic diagram of a multi-stream transmission control device provided for embodiments of this article; Figure 4 This is a schematic diagram of the structure of an electronic device provided for the embodiments of this article. Detailed Implementation

[0013] The embodiments described herein will now be described in more detail with reference to the accompanying drawings. While some embodiments are shown in the drawings, it should be understood that this document can be implemented in various forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided to provide a more thorough and complete understanding of the document. It should be understood that the accompanying drawings and embodiments are for illustrative purposes only and are not intended to limit the scope of this document.

[0014] It should be understood that the steps described in the method embodiments herein may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this document is not limited in this respect.

[0015] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.

[0016] It should be noted that the concepts of "first" and "second" mentioned in this article are only used to distinguish different devices, modules or units, and are not used to limit the order of the functions performed by these devices, modules or units or their interdependencies.

[0017] It should be noted that the terms "one" and "more" used in this document are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".

[0018] The names of messages or information exchanged between multiple devices in the embodiments herein are for illustrative purposes only and are not intended to limit the scope of these messages or information.

[0019] It is understood that before using the technical solutions disclosed in the embodiments of this article, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this article in an appropriate manner in accordance with relevant laws and regulations, and user authorization should be obtained. With the continuous growth of video-on-demand traffic, bandwidth costs for content distribution have become a core component of operating costs. To reduce bandwidth costs, the industry widely adopts peer-to-peer content delivery networks (PCDN). Specifically, PCDN is a technology designed to reduce content distribution costs by integrating idle upstream bandwidth in users' homes, turning it into miniature content distribution nodes to provide users with on-demand content delivery services.

[0020] Under the aforementioned system framework, multiple content distribution nodes transmit data to the same user terminal in parallel. The parallel transmission streams converge at the user's end link, sharing the same bottleneck resource with limited capacity, resulting in a serious risk of cross-stream congestion.

[0021] In related technologies, to maximize the aggregate throughput of the end link, packet loss in the buffer is typically used as the sole signal of bandwidth exhaustion. In multi-stream concurrent scenarios, this mechanism triggers rapid buffer overflows and frequent congestion-induced packet loss, potentially causing critical data to fail to be retransmitted in a timely manner, leading to buffer starvation and impacting the user's playback experience. It is evident that these technologies do not provide coordinated control over multiple streams, which is a key reason for increased packet loss rates, decreased continuous playback speed, and premature user exits, thus hindering the improvement of PCDN system performance.

[0022] Therefore, the embodiments of this paper provide a multi-stream transmission control method to solve the problem caused by the lack of multi-stream cooperative control in related technologies. Specifically, firstly, the network state information corresponding to each sub-stream in the aggregated stream is obtained. The network state information includes queuing delay and rate. Secondly, based on the network state information corresponding to each sub-stream, the network state information of the aggregated stream is determined. In response to the network state information of the aggregated stream reaching a first critical condition, the rate of each sub-stream in the aggregated stream is adjusted. The first critical condition is used to characterize that the throughput growth rate of the aggregated stream is less than a preset first threshold, and the queuing delay growth rate is greater than a preset second threshold.

[0023] This paper uses the first critical condition as a boundary signal point to achieve coordinated control of each sub-stream in the aggregated flow, thereby reducing the bottleneck problem of the end link caused by the individual control of each flow.

[0024] Furthermore, the multi-stream transmission control method provided in this paper not only triggers the coordinated control of the aggregated stream under the first critical condition, but also adjusts the rate of each sub-stream in the aggregated stream within the bounded detection interval formed by the first and second critical conditions, so that the aggregated streams converge to a better working range.

[0025] As can be seen, the multi-stream transmission control method provided in this paper can reduce packet loss rate and improve continuous playback speed through the coordinated control of multiple streams, thereby reducing the occurrence of users exiting prematurely and improving the performance of the PCDN system.

[0026] For ease of understanding, the embodiments herein provide a multi-stream transmission control method, which can be executed by a multi-stream transmission control device, wherein the device can be implemented in software and / or hardware, and is generally integrated into an electronic device. References Figure 1 The flowchart below illustrates a multi-stream transmission control method provided in the embodiments of this document, wherein the method includes: 101: Obtain the network state information corresponding to each sub-stream in the aggregated stream.

[0027] The network status information includes queuing delay and rate. In this paper, aggregated stream refers to a transport stream from multiple senders to the same receiver, formed by aggregating the sub-streams from each sender.

[0028] Queuing delay in network status information is used to characterize the queuing delay of data blocks transmitted by the corresponding node. The longer the queuing delay, the more congested the transmission path of the node is. Conversely, the shorter the queuing delay, or the absence of queuing delay, the smoother the transmission path of the node is.

[0029] In network state information, rate is used to characterize the speed of data transmission, that is, the amount of data downloaded from the corresponding node per unit time. Queuing delay and rate can characterize the network transmission status of the corresponding node.

[0030] The multi-stream transmission control method presented in this paper can be applied to clients (i.e., content receivers) in a PCDN system. After receiving a user's request to play any media content, the client requests data transmission from multiple nodes in the PCDN system. After confirming receipt of a data block transmitted by any node, the client performs single-stream state estimation, calculates the queuing delay of the data block for that node's transmission stream, and calculates the real-time arrival rate of that transmission stream.

[0031] 102: Determine the network state information of the aggregated stream based on the network state information corresponding to each sub-stream.

[0032] Since the aggregated flow is composed of multiple sub-flows, the network state information of the aggregated flow can be determined based on the network state information corresponding to each sub-flow.

[0033] In one scenario, within the same time window, aggregation flow state estimation is performed. After obtaining the network state information of the transport flow of each data block received within the time window, the network state information of the aggregation flow within this time window is determined based on the network state information of each transport flow. This information is used to describe the overall network state of the aggregation flow within the time window, including queuing delay and rate.

[0034] In another scenario, the results of single-stream estimation may contain noise, such as pseudo-delay increases caused by out-of-order delivery or rate spikes caused by burst traffic. Therefore, an adaptive weighted averaging process is needed to fuse and filter the data from each transport stream to obtain a globally stable estimation result. Specifically, during the aggregation stream state estimation process, sampling can be performed based on the network state information corresponding to each sub-stream in the aggregation stream, and the network state information of the aggregation stream can be determined through adaptive weighted averaging across multiple dimensions.

[0035] The aforementioned dimensions can include multiple aspects such as sample timeliness, queuing stability, arrival uniformity, interval consistency, and packet order effectiveness. Weights are dynamically assigned based on the evaluation of each dimension. Sample timeliness means that more recent samples have higher weights to filter out the impact of older samples on network state assessment. Queueing stability means that samples with small delay variance have higher weights to suppress noise during periods of severe jitter. Arrival uniformity means that samples with uniform packet intervals have higher weights to filter out bursty traffic. Interval consistency is necessary for filtering out the impact of path delay differences in multi-path aggregation. Packet order effectiveness means that samples with severe out-of-order packets have lower weights.

[0036] This paper proposes an adaptive weighted averaging method to filter burst traffic noise from multiple dimensions during the process of performing aggregated flow state estimation, thereby obtaining more accurate queuing delay and rate of aggregated flow.

[0037] 103: In response to the network state information of the aggregated flow reaching the first critical condition, the rates of each sub-flow in the aggregated flow are adjusted respectively.

[0038] The first critical condition is used to characterize that the throughput growth rate of the aggregated flow is less than a preset first threshold and the queuing delay growth rate is greater than a preset second threshold.

[0039] This paper proposes a method to track the network status of aggregated flows based on a first critical condition. This first critical condition represents the point where marginal benefits are minimized, indicating that the throughput growth rate of the aggregated flow is less than a preset first threshold, while the queuing delay growth rate is greater than a preset second threshold. The first critical condition can be understood as the point where bandwidth gains cease to increase, while queuing delay begins to increase sharply. It serves as an upper limit signal for bandwidth probing; exceeding this threshold and continuing to send packets will not bring additional bandwidth gains but will only increase latency, leading to congestion and packet loss.

[0040] In one scenario, when the network state information of the aggregated flow is detected to have reached the first critical condition, the rate of each sub-flow in the aggregated flow can be adjusted to avoid increased queuing delays caused by continuing to send packets beyond the first critical condition, which could lead to congestion and packet loss.

[0041] In another scenario, when the network state information of the aggregated flow reaches the first critical condition, the rates of each sub-flow within the aggregated flow can be adjusted to achieve a rate corresponding to the second critical condition. The second critical condition can be understood as the energy maximum point, representing the maximum ratio of the aggregated flow's throughput to its queuing delay. This second critical condition characterizes the critical point where the ratio of bandwidth to queuing delay is maximized. This critical point can serve as a lower limit signal for bandwidth detection, ensuring full bandwidth utilization while avoiding additional load pressure.

[0042] This paper uses the first critical condition as the upper limit signal point for bandwidth probing and the second critical condition as the lower limit signal point. Within the bounded probing interval formed by the first and second critical conditions, the network state of the aggregation flow is probing in a bounded manner. Specifically, when the network state information of the aggregation flow is detected to reach the first critical condition, cooperative multiplicative-subtractive processing is triggered to adjust the rate of the aggregation flow to the rate corresponding to the second critical condition, without waiting for packet loss. This method enables the aggregation flow to stably converge to a more optimal operating range.

[0043] In one scenario, a maximum-minimum fairness principle can be used to allocate bandwidth based on the rate ratio of the maximum energy point of each sub-flow, thus protecting the rights of smaller flows. Specifically, when the network state information of the aggregated flow is detected to have reached a first critical condition, the first rate corresponding to each sub-flow in that aggregated flow is obtained. The first rate is the historical rate of the corresponding sub-flow when its network state information reached the first critical condition. Then, based on the proportional relationship between the first rates corresponding to each sub-flow and the rate of the aggregated flow at the second critical condition, the second rate of each sub-flow is determined, i.e., the corresponding bandwidth is allocated to each sub-flow. After determining the second rate corresponding to each sub-flow, the rate of the sub-flow is adjusted based on the second rate.

[0044] It is understandable that, based on the proportional relationship between the historical rates of each sub-flow in the aggregated flow when the network state information of each sub-flow reaches the first critical condition, bandwidth is allocated to each sub-flow when the aggregated flow reaches the first critical condition. This can achieve bandwidth allocation that protects the interests of smaller flows while enabling coordinated control of multiple flows to stably converge the aggregated flow to a better working range.

[0045] In another scenario, after triggering the cooperative multiplicative decrease, the additive increase phase begins. Specifically, based on the rate of each subflow in the aggregate flow, the queuing delay, and the distance to the first critical condition, the asymmetric step size is determined, and a larger growth step size is allocated to the smaller flows to accelerate convergence.

[0046] The multi-stream transmission control method presented in this paper determines the bandwidth allocation result of each sub-stream in the aggregated stream by adjusting the rate of each sub-stream. Then, based on the bandwidth allocation result, data is requested from the corresponding sender of each sub-stream. Specifically, the rate adjustment result of each sub-stream corresponds to the bandwidth allocation result of each sub-stream, and subsequent data requests are made from each node in the PCDN system based on the bandwidth allocation result of each sub-stream.

[0047] In one scenario, during the coordinated rate adjustment of sub-streams within an aggregated stream, nodes with timeout rates reaching a certain threshold or unstable nodes with packet loss rates exceeding a certain threshold can be filtered out. This means suspending new data requests to these nodes. Additionally, data requests en route to these nodes can be retrieved, reducing resource waste. The bandwidth allocation result for these unstable nodes is 0, meaning no bandwidth is allocated to them; therefore, suspending new data requests to these nodes is also necessary.

[0048] In another scenario, for healthy nodes, data request quotas can be allocated based on the available congestion window of each node, using a maximum-minimum fairness principle. Priority can be given to filling the available capacity of smaller nodes, and then the remaining data requests can be allocated to other larger nodes. For example, in a PCDN system with three nodes having available capacities of 10, 5, and 2 respectively, if a client needs to send 12 data requests, these requests can be allocated to these three nodes in the order of 5, 5, and 2 requests, prioritizing the filling of the idle resources of the smaller nodes.

[0049] The multi-stream transmission control method presented in this paper first acquires the network state information corresponding to each sub-stream in the aggregated stream. This network state information includes queuing delay and rate. Secondly, based on the network state information corresponding to each sub-stream, the network state information of the aggregated stream is determined. In response to the network state information of the aggregated stream reaching a first critical condition, the rates of each sub-stream in the aggregated stream are adjusted. The first critical condition characterizes that the throughput growth rate of the aggregated stream is less than a preset first threshold, and the queuing delay growth rate is greater than a preset second threshold.

[0050] This paper uses the first critical condition as a boundary signal point to achieve coordinated control of each sub-stream in the aggregated flow, thereby reducing the bottleneck problem of the end link caused by the individual control of each flow.

[0051] Furthermore, this paper can also adjust the rate of each sub-node in the aggregated flow that has reached the first critical condition by using a bounded detection interval composed of the first critical condition and the second critical condition, so that the aggregated flow can quickly and stably converge to a better working interval, taking into account both bandwidth utilization and low packet loss rate.

[0052] As can be seen, this paper demonstrates that by controlling multiple streams collaboratively, packet loss rate can be reduced and continuous playback speed can be improved, thereby reducing the occurrence of users exiting prematurely and thus improving the performance of the PCDN system.

[0053] Building upon the above, this paper also considers the bottleneck type of each transmission stream in the multi-stream transmission control method. Compared to schemes that cannot identify whether a transmission stream is constrained by a shared end link bottleneck or by the capacity bottleneck of an independent transmitting device, the multi-stream transmission control method provided in this paper can achieve bottleneck type awareness, realize differentiated control of transmission streams with different bottleneck types, and improve the control accuracy of each transmission stream.

[0054] In one scenario, bottleneck types can be categorized into two types. Type 1 bottlenecks characterize transmission flows with a sender-side bottleneck, also known as independent edge bottleneck flows. Transmission flows with Type 1 bottlenecks suffer from performance bottlenecks inherent to the sender itself; for example, edge devices like set-top boxes often experience performance bottlenecks due to limited bandwidth. Type 2 bottlenecks characterize transmission flows with a shared-end bottleneck, also known as shared-end bottleneck flows, such as bottlenecks caused by the aggregation of links at the receiver end of a converged flow.

[0055] The multi-stream transmission control method presented in this paper can determine the bottleneck type of each sub-stream based on the network state information corresponding to each sub-stream in the aggregated stream and the network state information of the aggregated stream, so as to perform differentiated control on each sub-stream based on the bottleneck type.

[0056] In one scenario, the triggering sequence of the first critical condition between each sub-flow and the aggregate flow can be determined based on the network state information corresponding to each sub-flow and the network state information of the aggregate flow. The triggering sequence of the first critical condition characterizes the order in which the first critical condition is triggered between the sub-flow and the aggregate flow. Then, based on the triggering sequence of the first critical condition between each sub-flow and the aggregate flow, the bottleneck type of each sub-flow is determined. Specifically, sub-flows whose first critical condition triggering time is earlier than the triggering time of the aggregate flow's first critical condition are classified as bottleneck type 1; otherwise, they are classified as bottleneck type 2.

[0057] In another scenario, based on the network state information corresponding to each sub-flow in the aggregated flow and the network state information of the aggregated flow, it is determined whether the trigger time of the first critical condition of each sub-flow is earlier than the trigger time of the first critical condition of the aggregated flow. The queuing delay growth rate of the sub-flow that triggers earlier than the trigger time of the first critical condition of the aggregated flow is determined to be higher than the queuing delay growth rate of the aggregated flow. If it is higher, the bottleneck type of the sub-flow is determined to be the first type; otherwise, the bottleneck type of the sub-flow is determined to be the second type. A queuing delay growth rate significantly higher than that of the aggregated flow indicates that the sub-flow is limited by the performance bottleneck of the sending end itself, and the bottleneck type of the sub-flow can be determined to be the first type. Besides the sub-flows that meet the above conditions, the other sub-flows in the aggregated flow can be determined to be shared end bottleneck flows, and the bottleneck type is the second type.

[0058] In the multi-stream transmission control method provided in this paper, the rate of the sub-stream with bottleneck type 2 in the aggregated stream is adjusted after determining that the network state information of the aggregated stream reaches the first critical condition.

[0059] In one scenario, when the network state information of the aggregated flow is detected to reach the first critical condition, the bottleneck type of the aggregated flow is determined to be a sub-flow of the second type. Rate adjustment is then applied to this second-type sub-flow to achieve the rate corresponding to the second critical condition of the aggregated flow. The multi-stream transmission method presented in this paper achieves stable convergence of each sub-flow to a better operating range by coordinating control of each sub-flow within a bounded detection interval. Furthermore, it can sense the bottleneck type of each transmission flow and perform differentiated transmission control based on the bottleneck type.

[0060] In another scenario, when the network state information of the second sub-flow in the aggregated flow reaches the third critical condition, the rate of the second sub-flow is adjusted separately to reach the rate corresponding to the fourth critical condition. Here, the bottleneck type of the second sub-flow is the first type; the third critical condition characterizes the second sub-flow's throughput growth rate being less than a preset third threshold and its queuing delay growth rate being greater than a preset fourth threshold; and the fourth critical condition characterizes the maximum value of the ratio of the second sub-flow's throughput to its queuing delay.

[0061] For a transmission flow with a bottleneck type of 1, the third and fourth critical conditions of the transmission flow can be tracked separately. When the rate of the transmission flow reaches the third critical condition, local multiplicative subtraction is triggered independently to adjust the rate of the transmission flow to the rate of the fourth critical condition, so that the transmission flow can stably converge to a better working range.

[0062] In one scenario, since the bottleneck type of the transmission flow is the first type and is limited by the conditions of the sending end, the adjustment of this type of transmission flow may include releasing its unused bandwidth quota to the second type of transmission flow in order to make full use of the remaining capacity of the end link.

[0063] The multi-stream transmission control method presented in this paper can sense the bottleneck type of each transmission stream and control each transmission stream in parallel based on the bottleneck type. It makes full use of heterogeneous resources, which not only reduces cross-stream congestion of shared bottleneck streams, but also improves the utilization rate of idle bandwidth of independent edge bottleneck streams, thus taking into account both the coordination of multi-stream regulation and resource utilization.

[0064] For ease of understanding, this article also provides a schematic diagram of a multi-stream transmission control architecture, see reference. Figure 2 Upon receiving any data block, the joint delay-bandwidth estimation module performs single-stream state estimation on the transport stream transmitting that data block to obtain its network state information. Then, based on the network state information of each sub-stream, it performs aggregation stream scheduling estimation to obtain the network state information of the aggregation stream. Furthermore, based on the network state information of each sub-stream and the aggregation stream, it classifies each sub-stream as a bottleneck to determine its bottleneck type. Notably, the joint delay-bandwidth estimation module performs continuity detection on each sub-stream and detects the user playback buffer state based on the state estimation results of each sub-stream, proactively detecting potential playback starvation risks. Specifically, for missing data with discontinuous buffers and long data latency, a retransmission request queue is added for retransmission requests. Retransmission requests can be prioritized for nodes with lower packet loss rates to improve retransmission reliability.

[0065] When the joint control module detects that the aggregated stream has reached the first critical condition, it adjusts the rates of each sub-stream within the aggregated stream to bring the aggregated stream rate up to the rate corresponding to the second critical condition. Based on the rate adjustment result, bandwidth is allocated to the nodes corresponding to each sub-stream for subsequent download requests. Furthermore, during data block scheduling, load balancing can be considered, such as pausing data requests to unstable nodes with high timeout or packet loss rates, and employing a maximum-minimum fairness principle to allocate data request quotas, thereby maximizing load balancing.

[0066] After the joint control module identifies each download request in the download request queue, it sends it to the PCDN node management module, which then sends each download request to the corresponding node to request the corresponding node to transmit data. Through the dynamic collaborative control of the above multi-stream transmission, the bottleneck problem of the end link caused by the individual control of each stream can be reduced.

[0067] To implement the above embodiments, this paper also proposes a multi-stream transmission control device. Figure 3This is a schematic diagram of a multi-stream transmission control device provided for embodiments of this document. This device can be implemented in software and / or hardware and is generally integrated into an electronic device. For example... Figure 3 As shown, the device includes: The first acquisition module 301 is used to acquire network status information corresponding to each sub-stream in the aggregated stream; the network status information includes queuing delay and rate. The first determining module 302 is used to determine the network state information of the aggregated stream based on the network state information corresponding to each of the sub-streams. The first adjustment module 303 is used to adjust the rate of each sub-flow in the aggregated flow in response to the network state information of the aggregated flow reaching a first critical condition; the first critical condition is used to characterize the throughput growth rate of the aggregated flow being less than a preset first threshold and the queuing delay growth rate being greater than a preset second threshold.

[0068] In one scenario, the first adjustment module is specifically used for: In response to the network state information of the aggregated flow reaching a first critical condition, the rate of each sub-flow in the aggregated flow is adjusted so that the rate of the aggregated flow reaches the rate corresponding to a second critical condition; the second critical condition is used to characterize the maximum point of the ratio of the throughput to the queuing delay of the aggregated flow.

[0069] In another scenario, the first adjustment module includes: The first acquisition submodule is used to acquire the first rate corresponding to each sub-stream in the aggregated stream in response to the network state information of the aggregated stream reaching the first critical condition; the first rate is the historical rate of the sub-stream when the network state information of the sub-stream reaches the first critical condition. The first determining submodule is used to determine the second rate corresponding to each of the sub-streams based on the proportional relationship between the first rates corresponding to each of the sub-streams and the rate of the aggregated stream under the second critical condition; The adjustment submodule is used to adjust the rate of the substream based on the second rate corresponding to the substream.

[0070] In one scenario, the first determining module is specifically used for: Based on the network state information corresponding to each sub-flow, the network state information of the aggregated flow is determined by an adaptive weighted average of multiple dimensions; the multiple dimensions include multiple of sample timeliness, queuing stability, arrival uniformity, interval consistency and packet order validity.

[0071] In one embodiment, the device further includes: The second determining module is used to determine the bottleneck type of each sub-flow based on the network status information corresponding to each sub-flow and the network status information of the aggregated flow; the bottleneck type includes a first type and a second type, the first type is used to characterize that the sub-flow has a sending end bottleneck, and the second type is used to characterize that the sub-flow has a shared end bottleneck. The first adjustment module is specifically used for: In response to the network state information of the aggregated flow reaching a first critical condition, the rate of the sub-flow in the aggregated flow whose bottleneck type is the second type is adjusted.

[0072] In one embodiment, the device further includes: The second adjustment module is used to adjust the rate of the second sub-flow separately in response to the network state information of the second sub-flow in the aggregated flow reaching the third critical condition, so that the rate of the second sub-flow reaches the rate corresponding to the fourth critical condition of the second sub-flow; the bottleneck type of the second sub-flow is the first type; the third critical condition is used to characterize the throughput growth rate of the second sub-flow being less than a preset third threshold and the queuing delay growth rate being greater than a preset fourth threshold; the fourth critical condition is used to characterize the maximum value point of the ratio of the throughput to the queuing delay of the second sub-flow. The release module is used to release the idle bandwidth quota corresponding to the second sub-stream.

[0073] In one scenario, the second determining module includes: The second determining submodule is used to determine the first critical condition triggering sequence between each of the sub-streams and the aggregated stream based on the network state information corresponding to each of the sub-streams and the network state information of the aggregated stream. The third determining submodule is used to determine the bottleneck type of the sub-flow based on the timing of the first critical condition trigger between the sub-flow and the aggregated flow.

[0074] In one embodiment, the device further includes: The third determining module is used to determine the bandwidth allocation result of each sub-stream in the aggregated stream by adjusting the rate of each sub-stream in the aggregated stream; The request module is used to request data from the sending end corresponding to each of the sub-streams based on the bandwidth allocation result.

[0075] The multi-stream transmission control device provided in this embodiment first acquires network state information corresponding to each sub-stream in the aggregated stream, wherein the network state information includes queuing delay and rate. Then, based on the network state information corresponding to each sub-stream, the network state information of the aggregated stream is determined. In response to the network state information of the aggregated stream reaching a first critical condition, the rates of each sub-stream in the aggregated stream are adjusted respectively. The first critical condition characterizes that the throughput growth rate of the aggregated stream is less than a preset first threshold and the queuing delay growth rate is greater than a preset second threshold. Based on this first critical condition boundary signal point, this embodiment achieves coordinated control of each sub-stream in the aggregated stream, thereby reducing the end-link bottleneck problem caused by individual control of each stream.

[0076] In addition to the methods and apparatus described above, embodiments of this document also provide a computer-readable storage medium storing instructions that, when executed on a terminal device, cause the terminal device to implement the multi-stream transmission control method described in the embodiments of this document. This computer-readable storage medium has the same beneficial effects as embodiments of this method.

[0077] The embodiments of this document also provide a computer program product comprising a computer program / instruction that, when executed by a processor, implements the multi-stream transmission control method described in the embodiments of this document. This computer program product has the same beneficial effects as the embodiments of this method.

[0078] Additionally, the embodiments herein also provide an electronic device, see [link to document]. Figure 4 As shown, it may include: The electronic device includes a processor 401, a memory 402, an input device 403, and an output device 404. The number of processors 401 in the electronic device can be one or more. Figure 4 Taking a processor as an example. In some embodiments herein, the processor 401, memory 402, input device 403, and output device 404 may be connected via a bus or other means, wherein... Figure 4 Taking the example of a connection between China and Israel via a bus.

[0079] The memory 402 can be used to store software programs and modules. The processor 401 executes various functional applications and data processing of the electronic device by running the software programs and modules stored in the memory 402. The memory 402 may mainly include a program storage area and a data storage area. The program storage area may store the operating system, at least one application program required for a function, etc. In addition, the memory 402 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device. The input device 403 can be used to receive input digital or character information, and to generate signal inputs related to user settings and function control of the electronic device.

[0080] Specifically, in this document, the processor 401 loads the executable files corresponding to the processes of one or more applications into the memory 402 according to the following instructions, and the processor 401 runs the applications stored in the memory 402 to realize the various functions of the above-mentioned electronic device.

[0081] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0082] The above description is merely a specific embodiment of the present invention, enabling those skilled in the art to understand or implement the invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the invention. Therefore, the present invention is not to be limited to the embodiments described herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A multi-stream transmission control method, the method comprising: Obtain the network state information corresponding to each sub-stream in the aggregated stream; The network status information includes queuing delay and rate; Based on the network state information corresponding to each sub-flow, the network state information of the aggregated flow is determined; In response to the network state information of the aggregated flow reaching a first critical condition, the rate of each sub-flow in the aggregated flow is adjusted; the first critical condition is used to characterize that the throughput growth rate of the aggregated flow is less than a preset first threshold and the queuing delay growth rate is greater than a preset second threshold.

2. The multi-stream transmission control method according to claim 1, wherein adjusting the rate of each sub-stream in the aggregated stream in response to the network state information of the aggregated stream reaching a first critical condition includes: In response to the network state information of the aggregated flow reaching the first critical condition, the rate of each sub-flow in the aggregated flow is adjusted so that the rate of the aggregated flow reaches the rate corresponding to the second critical condition. The second critical condition is used to characterize the maximum point of the ratio of the throughput of the aggregated stream to the queuing delay.

3. The multi-stream transmission control method according to claim 2, wherein adjusting the rate of each sub-stream in the aggregated stream in response to the network state information of the aggregated stream reaching a first critical condition, so that the rate of the aggregated stream reaches the rate corresponding to a second critical condition, comprises: In response to the network state information of the aggregated flow reaching a first critical condition, the first rate corresponding to each sub-flow in the aggregated flow is obtained; The first rate is the historical rate when the network state information of the sub-flow reaches the first critical condition; Based on the proportional relationship between the first rates corresponding to each of the sub-streams, and the rate of the aggregated flow under the second critical condition, the second rate corresponding to each of the sub-streams is determined; The rate of the sub-stream is adjusted based on the second rate corresponding to the sub-stream.

4. The multi-stream transmission control method according to claim 1, wherein determining the network state information of the aggregated stream based on the network state information corresponding to each sub-stream includes: Based on the network state information corresponding to each sub-stream, the network state information of the aggregated stream is determined by an adaptive weighted average of multiple dimensions. The multiple dimensions include several of the following: sample timeliness, queuing stability, arrival uniformity, interval consistency, and packet order effectiveness.

5. The multi-stream transmission control method according to claim 1, further comprising: Based on the network state information corresponding to each sub-flow and the network state information of the aggregated flow, the bottleneck type of each sub-flow is determined; The bottleneck types include a first type and a second type. The first type is used to characterize the existence of a sending-end bottleneck in the sub-stream, and the second type is used to characterize the existence of a shared-end bottleneck in the sub-stream. The adjustment of the rates of each sub-stream in the aggregated stream in response to the network state information of the aggregated stream reaching a first critical condition includes: In response to the network state information of the aggregated flow reaching a first critical condition, the rate of the sub-flow in the aggregated flow whose bottleneck type is the second type is adjusted.

6. The multi-stream transmission control method according to claim 5, further comprising: In response to the network state information of the second sub-flow in the aggregated flow reaching the third critical condition, the rate of the second sub-flow is adjusted separately so that the rate of the second sub-flow reaches the rate corresponding to the fourth critical condition of the second sub-flow; the bottleneck type of the second sub-flow is the first type; the third critical condition is used to characterize the throughput growth rate of the second sub-flow being less than a preset third threshold and the queuing delay growth rate being greater than a preset fourth threshold; the fourth critical condition is used to characterize the maximum value point of the ratio of the throughput to the queuing delay of the second sub-flow. Release the idle bandwidth quota corresponding to the second sub-stream.

7. The multi-stream transmission control method according to claim 5, wherein determining the bottleneck type of each sub-stream based on the network state information corresponding to each sub-stream and the network state information of the aggregated stream includes: Based on the network state information corresponding to each sub-flow and the network state information of the aggregated flow, the first critical condition triggering sequence between each sub-flow and the aggregated flow is determined. Based on the first critical condition triggering timing between the sub-flow and the aggregated flow, the bottleneck type to which the sub-flow belongs is determined.

8. The multi-stream transmission control method according to claim 1, further comprising: By adjusting the rates of each sub-stream in the aggregated stream, the bandwidth allocation result of each sub-stream in the aggregated stream is determined; Based on the bandwidth allocation results, data is requested from the sending end corresponding to each of the sub-streams.

9. A multi-stream transmission control device, the device comprising: The first acquisition module is used to acquire the network status information corresponding to each sub-stream in the aggregated stream; The network status information includes queuing delay and rate; The first determining module is used to determine the network state information of the aggregated stream based on the network state information corresponding to each of the sub-streams. The first adjustment module is used to adjust the rate of each sub-flow in the aggregated flow in response to the network state information of the aggregated flow reaching a first critical condition; the first critical condition is used to characterize the throughput growth rate of the aggregated flow being less than a preset first threshold and the queuing delay growth rate being greater than a preset second threshold.

10. An electronic device, the electronic device comprising: processor; Memory used to store the processor's executable instructions; The processor is configured to read the executable instructions from the memory and execute the instructions to implement the method as described in any one of claims 1-8.

11. A computer-readable storage medium storing a computer program for performing the method as described in any one of claims 1-8.

12. A computer program product comprising a computer program / instructions that, when executed by a processor, implement the method as described in any one of claims 1-8.