An adaptive data transfer optimization system and method for a docking station

By sensing the transmission metrics of the docking station ports in real time and calculating the traffic dispersion, and adjusting the scheduling weights in combination with a nonlinear response function, the problem of non-dynamic resource allocation in existing technologies is solved, bandwidth utilization and transmission efficiency are improved, and buffer overflow and lag are avoided.

CN122111901AInactive Publication Date: 2026-05-29DONGGUAN WORLDPASS IND CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
DONGGUAN WORLDPASS IND CO LTD
Filing Date
2026-04-27
Publication Date
2026-05-29
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

Existing technologies lack an adaptive mechanism that can linearly and dynamically adjust resource allocation based on the real-time characteristics of the data stream and the scenario load status, resulting in low bandwidth utilization and transmission stuttering issues.

Method used

By acquiring real-time transmission metrics from all active ports of the expansion dock, calculating traffic dispersion and buffer pressure response index, and adjusting scheduling weights using nonlinear amplification processing and dynamic scheduling gain coefficients, dynamic allocation of bandwidth resources is achieved.

Benefits of technology

It significantly improves the bus bandwidth utilization and transmission smoothness of the docking station in complex mixed load scenarios, avoids the waste of high-priority channels under low load and buffer overflow under high load, and ensures data integrity and transmission efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122111901A_ABST
    Figure CN122111901A_ABST
Patent Text Reader

Abstract

The application relates to the technical field of data transmission, in particular to an adaptive data transmission optimization system and method for a docking station. The method comprises the following steps: acquiring real-time transmission indexes of all active ports of the docking station, calculating a traffic dispersion index, performing nonlinear amplification processing on the traffic dispersion index in response to the current occupation depth of a hardware cache queue to obtain a cache pressure response index of each port; fusing a normalized value of the cache pressure response index of each port with a proportion of the cache pressure response index of the corresponding port in a total sum of cache pressure response indexes of all active ports to obtain a dynamic scheduling gain coefficient; and adjusting a basic scheduling weight of the corresponding port based on the dynamic scheduling gain coefficient to obtain a final scheduling weight, and allocating bandwidth resources to each port according to the final scheduling weight. That is, the scheme can adaptively adjust resource allocation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data transmission technology. More specifically, this invention relates to an adaptive data transmission optimization system and method for a docking station. Background Technology

[0002] As a hub connecting the host to various peripherals (such as monitors, hard drives, human-computer interaction devices, etc.), the core function of a docking station is to schedule and distribute multiple concurrent data streams using limited bus bandwidth (such as USB, Thunderbolt or PCIe channels).

[0003] Current technical methods primarily rely on static priority lists or fixed bandwidth reservation strategies. For example, systems typically default to setting video signals (DisplayPort / HDMI) as the highest priority, bulk transmissions from large-capacity storage devices as the second highest priority, and human-computer interaction devices (HID) as the lowest priority. The limitation of this processing logic is that the strategy is too rigid and cannot perceive real-time dynamic changes in business content.

[0004] In real-world scenarios, when users are only browsing static web pages, video streams, although having high priority, actually require very little bandwidth and have long packet transmission intervals. If a fixed strategy is still applied to reserve a large number of time slots or maintain a high priority value for video streams, storage devices currently undergoing heavy read / write tasks will be unable to utilize idle bandwidth resources, resulting in low bus utilization. Conversely, when storage devices are transferring a large number of small, fragmented files, their sensitivity to latency temporarily increases, and a fixed low-priority strategy will cause severe transmission stuttering.

[0005] Therefore, existing technologies lack an adaptive mechanism that can linearly and dynamically adjust resource allocation based on the real-time characteristics of the data stream and the scenario load status. Summary of the Invention

[0006] The purpose of this invention is to propose an adaptive data transmission optimization system and method for docking stations, in order to solve the problem in the prior art that it is impossible to linearly and dynamically adjust resource allocation according to the real-time characteristics of data streams and the scene load status; to this end, this invention provides solutions in the following two aspects.

[0007] In a first aspect, the present invention provides an adaptive data transmission optimization method for a docking station, comprising: Obtain real-time transmission metrics for all active ports of the expansion dock. The real-time transmission metrics include the data packet size, average arrival interval, and current occupancy depth of the hardware cache queue for each port within the sampling time window. Calculate the traffic dispersion index, which is positively correlated with the standard deviation of the data packet size within the sampling time window and negatively correlated with the average arrival interval of the data packets; In response to the current occupancy depth of the hardware cache queue, the traffic dispersion index is non-linearly amplified to obtain the cache pressure response index for each port. The normalized value of the cache pressure response index of each port is combined with the proportion of the cache pressure response index of the corresponding port in the sum of the cache pressure response indices of all active ports to obtain the dynamic scheduling gain coefficient. The final scheduling weight is obtained by adjusting the basic scheduling weight of the corresponding port based on the dynamic scheduling gain coefficient, and bandwidth resources are allocated to each port according to the final scheduling weight.

[0008] The above solution can accurately perceive the real-time characteristics of different service flows (such as constant bitrate video streams and burst file transfers) by collecting the transmission indicators of each port of the expansion dock in real time and calculating the traffic dispersion. Combined with the non-linear amplification processing of the hardware cache queue depth, it realizes the transformation from traditional static reservation to dynamic perception, which solves the problems of bandwidth waste in high-priority channels under low load and buffer overflow and stuttering caused by burst traffic under high load in existing technologies. It significantly improves the bus bandwidth utilization and transmission smoothness of the expansion dock in complex mixed load scenarios.

[0009] Optionally, the traffic dispersion index is the ratio of the standard deviation of the data packet size to the average arrival interval.

[0010] The above scheme can effectively distinguish between sudden large file transfers (high dispersion) and heartbeat packets or simple instructions (low dispersion), thereby more accurately quantifying the urgency and volatility of current business bandwidth requirements and providing reliable data support for subsequent precise adjustment of weights.

[0011] Optionally, the cache pressure response index is: ; in, Indicates the first The cache pressure response index for each port; For the first Traffic dispersion metrics for each port; For the first The current cache queue depth for each port is already occupied; For the first Total capacity of port buffer queues; It is a logarithmic function. This is the smallest bias term.

[0012] The above scheme maintains a low scheduling weight response when the cache queue is low to save resources for other ports, while exponentially increasing the pressure response index when the cache is close to full. This allows the scheduling priority of the port to be quickly increased before congestion occurs, effectively avoiding data packet loss and retransmission caused by physical layer cache overflow, and ensuring data integrity.

[0013] Optionally, the dynamic scheduling gain coefficient is: ; in, For the first Dynamic scheduling gain coefficient for each port; Total number of active ports; and The preset linear weighting factor, Indicates the first The normalized value of the cache pressure response index for each port. Indicates the first The cache pressure response index for each port.

[0014] The above solution can combine the absolute caching pressure of a single port with the overall competitive environment of the system in multi-port concurrent scenarios, ensuring that resource allocation can respond to individual sudden demands while maintaining the fairness of competition among multiple ports and preventing a single port from excessively monopolizing resources.

[0015] Optionally, the linear weighting factor and The specific values ​​are as follows: The current total load rate; the current total load rate is the ratio of the actual total bandwidth occupied by all active ports to the theoretical maximum physical bandwidth limit that the docking station can provide based on the hardware protocol, α and The sum is 1.

[0016] Optionally, the final scheduling weight is obtained by normalizing the scheduling weight, and the scheduling weight is: ; in, For the first The scheduling weight of each port; For the first Each port has a basic scheduling weight set based on the device type; For the first Dynamic scheduling gain coefficient for each port.

[0017] The above scheme retains the basic priority of latency-sensitive services such as video signals, while also giving low-priority devices such as storage the ability to temporarily increase their weight during burst transmissions, thus achieving an organic unity between rigid service guarantees and flexible bandwidth scheduling.

[0018] Optionally, bandwidth resources are allocated to each port, including: A weighted round-robin scheduler is used to allocate transmission time slots to each port based on the final scheduling weight.

[0019] Optionally, real-time transmission metrics of all active ports of the docking station can be obtained, including sampling each port within a microsecond-level time window to obtain real-time transmission metrics.

[0020] Optionally, obtaining the real-time transmission metrics further includes: monitoring the connection status and negotiated protocol version of each port through physical layer and link layer controllers.

[0021] In a second aspect, an adaptive data transmission optimization system for a docking station includes: processor; The memory stores computer instructions for adaptive data transfer optimization of the docking station, which, when executed by the processor, cause the system to perform the aforementioned adaptive data transfer optimization method for the docking station.

[0022] The beneficial effects of this invention are as follows: The solution of this invention breaks through the limitations of traditional static priority strategies. It quantifies the burstiness of services by calculating the ratio of the standard deviation of data packet size to the interval, and uses a nonlinear barrier function to dynamically adjust the scheduling weight according to the depth of the cache queue. This solution, combined with a load adaptive weighting factor, accelerates burst traffic under low load and prevents congestion and starvation under high load, effectively solving the problems of bandwidth waste and transmission stuttering when multiple peripherals are running concurrently. Attached Figure Description

[0023] Figure 1 This schematically illustrates a flowchart of the steps of an adaptive data transmission optimization method for a docking station in this embodiment; Figure 2 The diagram illustrates the bandwidth distribution of three different ports using an adaptive data transmission optimization method for a docking station according to this embodiment. Figure 3 This is a schematic diagram illustrating the structural block diagram of an adaptive data transmission optimization system for a docking station in this embodiment. Detailed Implementation

[0024] The technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention.

[0025] This invention addresses the technical problems of low bandwidth utilization and critical service lag caused by the static priority strategy used by existing expansion docks when processing multiple concurrent data streams. It proposes an adaptive data transmission optimization system and method for expansion docks.

[0026] Specifically, such as Figure 1 As shown in this embodiment, an adaptive data transmission optimization method for a docking station includes the following steps: Step S1: Obtain the real-time transmission metrics of all active ports of the docking station.

[0027] In this embodiment, the docking station serves as a hub connecting the host computer with peripherals such as monitors, hard drives, and human-computer interaction devices (HIDs). Internally, it includes a physical layer (PHY) and a data link layer controller. To achieve fine-grained traffic awareness, this embodiment samples each active port within a microsecond-level time window.

[0028] Specifically, the real-time transmission metrics include the data packet size, average arrival interval, and current occupancy depth of the hardware cache queue for each port within the sampling time window.

[0029] For example, the connection status of each port and the negotiated protocol version (such as USB 3.0, HDMI 2.1, etc.) can be monitored through physical layer and link layer controllers.

[0030] For each active port The system uses a hardware counter to count the data within the sampling window. The sequence of data packets transmitted internally. This includes the current occupancy depth of the hardware buffer queue. It reflects the current port congestion status and is a key physical indicator for determining whether packet loss is imminent.

[0031] The above-mentioned direct monitoring of connection status and protocol version by physical layer and link layer controllers ensures that the system can identify the hardware capabilities of access devices (such as bandwidth limit), thereby providing an accurate physical benchmark for load rate calculation and weight allocation, and enhancing the system's compatibility with different generations of peripherals and the accuracy of scheduling.

[0032] Step S2: Calculate the flow dispersion index.

[0033] In this embodiment, in order to distinguish the characteristics of different service flows (e.g., the constant bitrate of video streams and the bursty large data blocks of file transfers), it is necessary to calculate the traffic dispersion index.

[0034] In this embodiment, the traffic dispersion index is the ratio of the standard deviation of the data packet size to the average arrival interval of the data packets within the sampling time window.

[0035] Specifically, the flow dispersion index The calculation formula is as follows: Flow dispersion index The specific calculation method is as follows: ; in, Indicates the first Traffic dispersion of each port; This is the length of the sampling time window; For the window The first port The size of each data packet; For the first in the window Average packet size per port; For the first in the window The average arrival time of data packets per port.

[0036] The value of the sampling time window length is... .

[0037] As shown in the formula above, the standard deviation of packet size characterizes the volatility of the data stream; while the reciprocal of the mean arrival interval characterizes the density of the data stream. When a port transmits bursts of large files (such as external SSD writes), the packet size varies greatly and the intervals are short, resulting in a high traffic dispersion index. Significantly increased; while for heartbeat packets or simple HID commands, the packets are small and the intervals are long, resulting in a low traffic dispersion index. The dispersion is relatively small. Therefore, this traffic dispersion index can effectively characterize the urgency and volatility of current business bandwidth demands.

[0038] Step S3: Calculate the cache pressure response index for each port.

[0039] To prevent data loss and retransmission caused by buffer overflow, this embodiment introduces a non-linear amplification mechanism to obtain the buffer pressure response index of each port.

[0040] Specifically, the cache pressure response index The calculation formula is as follows: ; in, Indicates the first The cache pressure response index for each port; For the first Traffic dispersion metrics for each port; For the first The current cache queue depth for each port is already occupied; For the first Total capacity of port buffer queues; It is the natural logarithm function. This is a minimal bias term, and its value can be 10. -6 .

[0041] The above formula contains a barrier function term. There are two possible scenarios: When under low load, when the The current cache queue depth for each port is currently occupied. much smaller When this term approaches 0, at this time... This indicates that when the cache is sufficient, even if the traffic dispersion is high, the system will not excessively increase the scheduling weight of this port, thereby saving resources for other ports.

[0042] When under high load, when the The current cache queue depth for each port is currently occupied. Approximately total capacity When the denominator approaches 0, the term approaches infinity. The value of the function increases rapidly, making It is rising exponentially.

[0043] In the above formula, as the cache approaches full capacity, the scheduling urgency of the system for that port increases dramatically and non-linearly, thus prioritizing the clearing of the port's cache to avoid physical layer overflow.

[0044] Step S4: Calculate the dynamic scheduling gain coefficient.

[0045] To achieve fair and efficient resource contention among multiple ports, the cache pressure response index of each port needs to be normalized and merged. The normalized value of the cache pressure response index of each port is merged with the proportion of the corresponding port's cache pressure response index in the sum of the cache pressure response indices of all active ports to obtain the dynamic scheduling gain coefficient.

[0046] The normalized value is the ratio of the cache pressure response index of each port to a preset security threshold. The preset security threshold can be the average cache pressure response index of the docking station during data transmission, calculated based on historical data.

[0047] Specifically, the dynamic scheduling gain coefficient The calculation formula is as follows: ; in, For the first Dynamic scheduling gain coefficient for each port; Total number of active ports; and The preset linear weighting factor, Indicates the first The normalized value of the cache pressure response index for each port. Indicates the first The cache pressure response index for each port.

[0048] In one embodiment, the linear weighting factor and It is not a fixed value, but rather related to the current total load factor, specifically: ; ; in, This is the current total load rate of the system, which is the ratio of the actual total bandwidth occupied by all active ports to the theoretical maximum physical bandwidth limit that the docking station can provide based on the hardware protocol.

[0049] Among them, when the current total load rate At lower levels, The load is relatively high, and the scheduling strategy mainly depends on the absolute load value of the port itself. Allows for rapid throughput of bursts of traffic; when the current total load rate is... When approaching 1 (congestion state), The proportion is relatively large, so the scheduling strategy shifts to focus on the relative proportion. At this point, the system enters contention mode, and the limited remaining bandwidth needs to be allocated according to the relative pressure on each port to prevent a single port from monopolizing resources and causing other ports to starve.

[0050] Therefore, by adopting a dynamic linear weighting factor based on the current total load rate, adaptive switching of the scheduling strategy is achieved: when the load is low, the absolute pressure value of the port itself is emphasized, allowing burst traffic to pass quickly; when the load is congested, the relative pressure ratio is emphasized, and a contention mode is entered, thereby ensuring the total throughput while preventing a single port from monopolizing resources and causing other low-priority ports to starve.

[0051] Step S5: Generate the final scheduling weights and allocate bandwidth resources.

[0052] In this embodiment, the basic scheduling weight of the corresponding port is adjusted based on the dynamic scheduling gain coefficient to obtain the final scheduling weight, and bandwidth resources are allocated to each port according to the final scheduling weight.

[0053] Specifically, scheduling weight The calculation formula is: ; in, For the first The scheduling weight of each port; For the first Each port has a basic scheduling weight set based on the device type; For the first Dynamic scheduling gain coefficient for each port.

[0054] In this embodiment, the scheduling weights of all ports are normalized to obtain the final scheduling weight of each port. The sum of the final scheduling weights of all ports is 1.

[0055] In this embodiment, the base weight of the video interface is set to 10, and the weight of the USB storage is set to 5.

[0056] After obtaining the final scheduling weights, a Weighted Round Robin (WRR) scheduler is used for resource allocation. Specifically, the bus transmission time slots are divided into several time slices, and the number of time slices obtained by each port is related to its final scheduling weight. Proportional.

[0057] The weighted round-robin scheduler described above is an improved scheduling algorithm that achieves a more flexible and efficient scheduling strategy by assigning different weights to each task or resource.

[0058] Specifically, the process of resource allocation using a Weighted Round Robin (WRR) scheduler is as follows: First, a dual-level register is configured for double-buffered storage.

[0059] In this embodiment, two sets of registers are set up, including a weight register and a running counter; the weight register receives the final scheduling weight at any time; the running counter stores the remaining time slice quota of each port in the current period.

[0060] Secondly, periodic initialization.

[0061] Specifically, at the start of a scheduling round, the final scheduling weight is synchronized to the counter, and the specific execution is as follows: Read the final scheduling weights of all ports; set the counters of all ports to their corresponding final scheduling weights; set a pointer to the first port.

[0062] Then, polling scheduling (allocating time slices) is used.

[0063] Specifically, the scheduler scans the ports sequentially, checking if each port has a data transmission request and the time slice quota of each port's counter. If it is greater than 0, the scheduler allocates the current transmission time slice to the corresponding port, decrements the port's counter by 1, and moves the pointer down, until all port counters become 0, at which point this round ends. Then, it immediately jumps back to the cycle initialization step and begins a new round of allocation.

[0064] For example, suppose there are three ports a, b, and c, and the current dynamic weight ratio is 3:2:1. If there are a total of 6 time slots in one cycle, then A gets 3 slots, B gets 2 slots, and C gets 1 slot.

[0065] Initial state: C[a]=3, C[b]=2, C[c]=1.

[0066] In time slots 1-3: the pointer scans cyclically, and each of a, b, and c uses up 1 quota. The counter becomes: C[a]=2, C[b]=1, C[c]=0.

[0067] The 4th time slot: the pointer points to C, but C[c]=0, so skip; it points to A, allocates, A is decremented by 1, and the counter becomes: C[a]=1, C[b]=1, C[c]=0.

[0068] In time slots 5 and 6: slots a and b continue to consume. Finally, all counters return to 0.

[0069] The above-mentioned weighted round-robin scheduler maps the calculated final scheduling weight to the number of transmission time slots, ensuring that high-weight ports obtain more physical transmission time slices. This enables the efficient and accurate execution of the resource allocation strategy calculated at the upper layer at the hardware level, achieving fine-grained control of bandwidth resources.

[0070] For example, Figure 2 The image shows the bandwidth allocation ratio for three different ports. In port 0, the bandwidth for video accounts for 8% and occupies 1 time slot, while in port 1, the bandwidth for USB storage accounts for 92% and occupies 11 time slots.

[0071] The solution of this invention achieves a shift from "static reservation" to "dynamic sensing" by real-time sensing of the discrete characteristics of the data stream and the physical pressure of the hardware cache, utilizing a nonlinear response function and a load-adaptive weighting mechanism. This not only solves the problem of wasted bandwidth in high-priority channels under low load, but also effectively avoids cache overflow caused by sudden traffic bursts under high load, significantly improving the transmission efficiency and user experience of the docking station in complex mixed load scenarios.

[0072] This invention also provides an adaptive data transmission optimization system for a docking station. For example... Figure 3As shown, the system includes a processor and a memory, the memory storing computer program instructions that, when executed by the processor, implement an adaptive data transmission optimization method for a docking station according to the present invention.

[0073] The system also includes other components well known to those skilled in the art, such as communication buses and communication interfaces, the settings and functions of which are known in the art and therefore will not be described in detail here.

[0074] In this invention, the aforementioned memory can be any tangible medium containing or storing a program that can be used or combined with an instruction execution system, apparatus, or device. For example, a computer-readable storage medium can be any suitable magnetic or magneto-optical storage medium, such as Resistive Random Access Memory (RRAM), Dynamic Random Access Memory (DRAM), Static Random Access Memory (SRAM), Enhanced Dynamic Random Access Memory (EDRAM), High-Bandwidth Memory (HBM), Hybrid Memory Cube (HMC), etc., or any other medium that can be used to store desired information and can be accessed by an application, module, or both. Any such computer storage medium can be part of a device or accessible to or connected to a device. Any application or module described in this invention can be implemented by computer-readable / executable instructions stored or otherwise maintained on such a computer-readable medium.

[0075] In the description of this specification, "multiple" means at least two, such as two, three or more, etc., unless otherwise expressly and specifically defined.

[0076] While various embodiments of the invention have been shown and described in this specification, it will be apparent to those skilled in the art that such embodiments are provided by way of example only. Many modifications, alterations, and alternatives will occur to those skilled in the art without departing from the spirit and essence of the invention.

Claims

1. An adaptive data transmission optimization method for a docking station, characterized in that, The method includes: Obtain real-time transmission metrics for all active ports of the expansion dock. The real-time transmission metrics include the data packet size, average arrival interval, and current occupancy depth of the hardware cache queue for each port within the sampling time window. Calculate the traffic dispersion index, which is positively correlated with the standard deviation of the data packet size within the sampling time window and negatively correlated with the average arrival interval of the data packets; In response to the current occupancy depth of the hardware cache queue, the traffic dispersion index is non-linearly amplified to obtain the cache pressure response index for each port. The normalized value of the cache pressure response index of each port is combined with the proportion of the cache pressure response index of the corresponding port in the sum of the cache pressure response indices of all active ports to obtain the dynamic scheduling gain coefficient. The final scheduling weight is obtained by adjusting the basic scheduling weight of the corresponding port based on the dynamic scheduling gain coefficient, and bandwidth resources are allocated to each port according to the final scheduling weight.

2. The adaptive data transmission optimization method for a docking station according to claim 1, characterized in that, The traffic dispersion index is the ratio of the standard deviation of the data packet size to the average arrival interval.

3. The adaptive data transmission optimization method for a docking station according to claim 1, characterized in that, The cache pressure response index is: ; in, Indicates the first The cache pressure response index for each port; For the first Traffic dispersion metrics for each port; For the first The current cache queue depth for each port is already occupied; For the first Total capacity of port buffer queues; It is a logarithmic function. This is the smallest bias term.

4. The adaptive data transmission optimization method for a docking station according to claim 1, characterized in that, The dynamic scheduling gain coefficient is: ; in, For the first Dynamic scheduling gain coefficient for each port; Total number of active ports; and The preset linear weighting factor, Indicates the first The normalized value of the cache pressure response index for each port. Indicates the first The cache pressure response index for each port.

5. The adaptive data transmission optimization method for a docking station according to claim 4, characterized in that, The linear weighting factor and The specific values ​​are as follows: The current total load rate; the current total load rate is the ratio of the actual total bandwidth occupied by all active ports to the theoretical maximum physical bandwidth that the docking station can provide based on the hardware protocol, α and The sum is 1.

6. The adaptive data transmission optimization method for a docking station according to claim 1, characterized in that, The final scheduling weight is obtained by normalizing the scheduling weights, and the scheduling weights are: ; in, For the first The scheduling weight of each port; For the first Each port has a basic scheduling weight set based on the device type; For the first Dynamic scheduling gain coefficient for each port.

7. The adaptive data transmission optimization method for a docking station according to claim 1, characterized in that, Allocate bandwidth resources to each port, including: A weighted round-robin scheduler is used to allocate transmission time slots to each port based on the final scheduling weight.

8. The adaptive data transmission optimization method for a docking station according to claim 1, characterized in that, Obtain real-time transmission metrics for all active ports of the expansion dock, including sampling each port within a microsecond-level time window to obtain real-time transmission metrics.

9. The adaptive data transmission optimization method for a docking station according to claim 1, characterized in that, Obtaining the real-time transmission metrics also includes monitoring the connection status and negotiated protocol version of each port through the physical layer and link layer controllers.

10. An adaptive data transmission optimization system for a docking station, characterized in that, The system includes a processor and a memory, the memory storing computer program instructions. When the processor executes the computer program instructions, it implements the adaptive data transmission optimization method for a docking station as described in any one of claims 1 to 9.