QUIC network protocol-based multipath scheduling device

Through a multi-channel scheduling device based on the QUIC network protocol, the signal water level mechanism module and the reliability-aware scheduling module are used to optimize multi-path transmission, solving the problems of increased transmission instability and delay caused by signal fluctuations in mobile devices, and achieving more efficient data transmission and user experience improvement.

CN119966914APending Publication Date: 2025-05-09EAST CHINA NORMAL UNIV
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202510098846.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-22
Publication Date
2025-05-09

AI Technical Summary

Technical Problem

While improving throughput, existing multipath transmission technologies are difficult to effectively reduce end-to-end delays, especially when signal fluctuations in mobile devices frequently lead to increased transmission instability and delays.

Method used

A multi-channel scheduling device based on QUIC network protocol is designed to sense signal strength and data reliability through the signal water level mechanism module, realize cross-end feedback cooperation, schedule reliable and unreliable data, optimize transmission paths, and reduce burst loss.

Benefits of technology

It effectively reduces continuous burst loss caused by link interruption, improves the on-time delivery rate of reliable application data, and significantly improves transmission performance and user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119966914A_ABST
    Figure CN119966914A_ABST
Patent Text Reader

Abstract

The invention discloses a multipath scheduling device based on a QUIC network protocol. The multipath scheduling device comprises two modules, namely a signal water level mechanism module and a reliability sensing scheduling module. And the signal water level mechanism module is responsible for monitoring the change of wireless signal strength on the mobile equipment, comparing the quantized signal quality score with three water levels of interruption, warning and good, and providing corresponding feedback according to the comparison result. And the reliability perception scheduling module performs classification processing at the sending end according to the reliability of the data, preferentially ensures the transmission of reliable data, and injects unreliable data in an idle period of a slow path. And the reliability sensing scheduling module also dynamically adjusts the path use according to the feedback of the signal water level mechanism module, and stops the link interruption path. Kernel codes do not need to be modified, and deployment is easy and convenient. Experimental evaluation results of real equipment show that the user experience can be improved by 96.8% in a highly moving environment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of network multipath transmission scheduling, and in particular to a multipath scheduling device based on the QUIC network protocol. Background Art

[0002] Currently, diverse mobile applications such as video conferencing, augmented reality / virtual reality (AR / VR), remote driving, and cloud gaming have significantly changed people's lifestyles. These emerging scenarios have put forward urgent demands for high network bandwidth, which has promoted the development of multipath transmission technology. However, as users' requirements for response speed are increasing, existing multipath solutions (such as MPQUIC) need to effectively reduce end-to-end latency through reliability differentiated transmission while improving throughput to meet users' high requirements for low latency.

[0003] During data transmission, different types of data have different importance. Taking video streaming as an example, the video contains I frames and P frames, where I frames are independent as the start of GOP (Group of Pictures), while P frames depend on the previous frame. The loss of I frames will cause all dependent P frames to become invalid. Although existing systems (such as SVC extensions) allow P frames to be skipped without affecting the decoding of subsequent frames, if all data is to be transmitted reliably, the delay will increase accordingly. MPQUIC ensures that critical data (such as I frames) are reliably transmitted through differentiated reliability, while non-critical data is transmitted unreliably, thereby reducing latency while maintaining the necessary data integrity.

[0004] Unlike traditional computing devices, mobile devices are always on the move, and users may use their phones while walking, riding high-speed trains, or driving vehicles. Video streaming in vehicles has spawned new applications such as in-car entertainment and gaming. However, mobility causes frequent and sudden changes in signals on the terminal device side, which are mainly caused by switching of cellular networks or weak WiFi signals. With the development of next-generation cellular networks (such as 5G / 6G), mobile devices will face more network switching because the coverage area of ​​a single base station is smaller than that of a 4G LTE base station. This enhanced mobility makes signal fluctuations more frequent and drastic, further exacerbating the instability of transmission.

[0005] Due to the "visibility gap" and lack of awareness of link interruptions, existing schedulers have difficulty responding to signal changes in a timely manner. Even if the wireless signal is lost, the scheduler will treat it as network congestion, reduce the sending rate but continue to send data packets, resulting in a vicious packet loss cycle. Severe burst packet loss can last for several seconds, and due to the dependency of data packets on the two paths, the overall transmission performance is degraded. The delay in data arrival hinders the rendering of the next frame, resulting in screen freezes and video artifacts.

[0006] In addition, burst packet loss caused by poor signal will cause a large amount of reliable data to be retransmitted, forcing unreliable data to queue. When the reliable data is retransmitted, the queued unreliable data will quickly flood into the network, further delaying the transmission of subsequent reliable data. This mutual blocking increases the overall delay because both data types are waiting in the send queue. Ideally, critical data packets should not be affected by unreliable data packets. Although giving higher priority to reliable data can improve performance, simply suppressing unreliable data packets will hinder their timely transmission. Therefore, there is an urgent need for a scheduler that can better coordinate these two data types to optimize overall transmission performance and user experience. Summary of the invention

[0007] In order to overcome the problems existing in the above technologies, the purpose of the present invention is to provide a multi-channel scheduling device based on the QUIC network protocol. The basic idea is to perceive the signal strength and data reliability, realize cross-end feedback collaboration, reduce the impact of burst loss caused by wireless signal fluctuations on transmission, and transmit reliable data within the deadline as much as possible.

[0008] The specific technical solution for achieving the purpose of the present invention is:

[0009] A multi-channel scheduling device based on the QUIC network protocol, comprising:

[0010] Signal water level mechanism module: Co-design the QUIC protocol and wireless network module to collect the signal strength of the wireless link; calculate the quality score through the quantization algorithm; compare the quality score with the signal water level, generate different feedback information based on the comparison result, and send it to the sender;

[0011] Reliability-aware scheduling module: manages and schedules reliable data and unreliable data through a dual-queue (Dual-Q) data structure. Reliable data is mapped as a block unit and placed in a reliable queue (RQ). Unreliable data is considered as a stream according to the deadline and placed in an unreliable queue (UQ). Reliable data blocks calculate the distribution ratio of blocks on fast and slow paths based on the warning and recovery feedback of the signal water level mechanism module, and then determine the order of sending blocks based on the weight algorithm. Unreliable data flows are injected during the idle time of the slow path after each reliable data block is sent. After receiving interruption or recovery feedback, the specified path will be disabled or enabled. If it is a disabled path, the in-transit data packets on the path will be re-injected according to the deadline.

[0012] The signal water level mechanism module works in the QUIC network protocol on the mobile device, and the reliability-aware scheduling module works in the QUIC network protocol on the sender.

[0013] Furthermore, the reliable data refers to data that has a great impact on the application and must be guaranteed to arrive reliably without loss; the unreliable data refers to data that has a small impact on the application and will not be retransmitted after being lost.

[0014] Furthermore, fast and slow paths refer to paths with different round-trip delays. A path with a smaller round-trip delay is a fast path, and a path with a larger round-trip delay is a slow path.

[0015] Furthermore, the signal water level mechanism module collaboratively designs the QUIC protocol and the wireless network module by adding an adapter layer to the wireless network module and utilizing lock-free programming, including:

[0016] In the Java code, a listener is implemented to monitor the signal strength changes of the wireless network module, and an interface for obtaining the signal strength indicator is provided; the interface and the listener are abstracted into an adapter layer;

[0017] In the C code, a thread dedicated to obtaining the signal strength indicator is implemented. The thread uses Java NativeInterface (JNI) to call the signal strength indicator interface in the Java code. The thread and the QUIC protocol pass various indicators through atomic variables to achieve lock-free programming and reduce the performance impact on the QUIC protocol.

[0018] Furthermore, the signal water level mechanism module calculates the quality score through the quantization algorithm, compares the quality score with the signal water level, generates different feedback information according to the comparison result, and sends it to the sending end, specifically including:

[0019] Since the obtained signal strength indicators have different scales and units, in order to evaluate the path quality consistently, these indicators are normalized to a standard interval (0,1); the weighted geometric mean is used to integrate the normalized indicators to obtain the basic signal quality score;

[0020] The basic signal quality score Q base :

[0021]

[0022] Where SINR norm and RSRP norm is the normalized signal strength index, w sinr and w rsrp It is an adjustable weight in the interval [0,1], which is used to adjust the importance of the indicator to the score change. If any indicator is too low, the overall score will be reduced;

[0023] Introducing a modulation factor based on packet loss trends to further adjust the calculation of the signal quality score; a sudden increase in the loss rate indicates an escalation of instability, so a downward adjustment is necessary; conversely, the quality score will not improve, because a temporary reduction in loss does not ensure recovery;

[0024] The modulation factor based on the packet loss trend is denoted as H(Δloss):

[0025]

[0026] Where Δloss is the change in loss rate, exp is a natural exponential function, and γ is in the range of 0 to 1, which controls the sensitivity to the increase in loss. When the loss increases, the larger γ is, the worse the quality is, and vice versa, it will reduce the impact of the increase in loss on the quality score;

[0027] Multiplying the basic signal quality score by the modulation factor to obtain a final signal quality score;

[0028] The signal quality score is recorded as Q:

[0029] Q=Q base ×H(Δloss);

[0030] The quality score is compared with three water levels: good, warning, and interruption. If the value of the quality score is lower than the "warning" water level, a warning feedback is generated, which carries the difference between the current score value and the "warning" water level. If it is lower than the "interruption" water level, an interruption feedback is generated, instructing the sender to stop scheduling on the path. When the value of the score exceeds the "warning" water level, whether to generate recovery feedback will be considered according to the timing threshold method. The feedback will be sent to the sender.

[0031] Further, the considering whether to generate recovery feedback according to the timing threshold method includes:

[0032] When the score recovers from "interruption" to "good" or above, recovery feedback is immediately issued; if the score only rises to between "interruption" and "warning", no action is taken; when the score exceeds "warning", the timer starts counting; only when the score remains above "warning" and the timer exceeds the critical time T rec Recovery feedback is generated only when the timer is reset; otherwise, the timer is reset.

[0033] Furthermore, the dual-queue (Dual-Q) is composed of queues abstracted from two different data structures, namely, a reliable data block queue (RQ) and an unreliable data stream queue (UQ); RQ is a vector array used to store reliable data; the reliable data stored therein is regarded as each abstract block for scheduling, and the blocks that are not sent in one scheduling will be put back into the RQ and wait for the next scheduling; UQ is a bidirectional linked list used to store unreliable data, which is regarded as a whole stream and sorted in order of deadline.

[0034] Furthermore, the reliability notification scheduling module calculates the distribution ratio of the blocks on the fast and slow paths for the reliable data blocks in the RQ according to the warning and recovery feedback of the signal water level mechanism module, and then determines the sending order of the blocks according to the weight algorithm, which specifically includes:

[0035] Path allocation is performed based on the principle that block data on two paths arrive at the same time. After receiving warning feedback, the path bandwidth is dynamically adjusted according to the feedback to reduce the allocation amount on the path.

[0036] The simultaneous arrival path allocation equation is recorded as:

[0037]

[0038] Where size 1 and size 2 is the amount of data to be distributed on the two paths, bw agg is the total bandwidth of the two paths, bw 1 and bw 2 are the bandwidths of the two paths, OWD 1 and OWD 2 are the one-way delays of the two paths, F 1 and F 2 It is determined by the warning feedback received on the two paths. The more severe the warning feedback is, the closer the value is to 0. If recovery feedback is received, the value is reset to 1. Based on the amount of data allocated on the path, the remaining sending time on the path is further calculated.

[0039] The remaining transmission time of the path i is Trsd i :

[0040] Trsd i =deadline i -Tpsd i -OWD i

[0041] The deadline i is the data cutoff date, Tpsd i is the time that has passed; if Trsdi If it is less than 0, it proves that the data cannot be delivered before the deadline. The block sending operation is canceled and removed from the RQ. Based on the remaining sending time, the gap between the current bandwidth and the minimum required bandwidth is further calculated.

[0042] The difference between the current bandwidth and the minimum required bandwidth is recorded as Gbw:

[0043]

[0044] Among them Cbw i is the current bandwidth of path i, size i is the size of the data allocated on the path; Gbw is equal to the smaller value calculated from the two paths; the data block with a smaller Gbw value is more urgent; if Gbw is less than zero, it means that the data cannot be delivered within the remaining time under the current path conditions; the reliability-aware scheduling module delays processing of the data block so that other data blocks can be processed first; finally, the reliability-aware scheduling module determines the weight value based on the bandwidth gap and block priority;

[0045] Let the weight value be weight:

[0046]

[0047] Where α is a parameter used to adjust the importance of the two in the weight calculation, R is the ratio of unsent data in the block, ensuring that the block with most of the data sent gets a lower weight value (higher sending priority), and P max is the maximum priority value, used for normalization, priority is the priority of the block; the blocks are sent in order from small to large weight values.

[0048] Further, the unreliable data flow in the reliability-aware scheduling module is injected during the idle time of the slow path after each reliable data block is sent, specifically including:

[0049] Unreliable data on UQ is managed as a data stream sorted by deadline, with a weight set higher than the maximum priority value P max To make a distinction; during the slow path idle time, UQ data is injected into the slow path.

[0050] Furthermore, the reliability-aware scheduling module will deactivate or enable a specified path after receiving interruption or recovery feedback. If the path is deactivated, the in-transit data packets on the path will be re-injected according to the deadline, specifically including:

[0051] After receiving feedback from the signal water level mechanism module, if the feedback received is an interruption, the path will be immediately disabled for continued scheduling; for the sent data packets on the disabled path, after a round of scheduling is completed, they will be tried to be re-injected on another path in the order of deadlines; if the deadline has expired, the re-injection of the packet will be abandoned; re-injection is only for reliable data and will not be performed for unreliable data; if the disabled path receives recovery feedback, the path will be re-enabled.

[0052] Compared with the existing technology, the method proposed in this invention effectively reduces the continuous burst loss caused by link interruption, improves the on-time delivery rate of reliable data of applications, and significantly improves the transmission performance and user experience. Experiments show that the retransmission rate is reduced by an average of 12.8%, the tail packet delay is improved by 98.2%, and the user experience is improved by 96.8%. BRIEF DESCRIPTION OF THE DRAWINGS

[0053] Figure 1 This is the working flow diagram of the signal water level mechanism module;

[0054] Figure 2 This is a schematic diagram of a time hole;

[0055] Figure 3 The following is an architecture diagram for a multi-channel scheduling device based on the QUIC network protocol. DETAILED DESCRIPTION

[0056] The present invention is described in detail below with reference to the accompanying drawings and embodiments.

[0057] A multi-channel scheduling device based on the QUIC network protocol of the present invention includes: a signal water level mechanism module and a reliability-aware scheduling module.

[0058] Signal water level mechanism module: First, the QUIC protocol obtains the current signal strength index from the adapter layer of the wireless network module. Second, these indicators are input into the quantization algorithm, and the current signal quality score is quantified according to the algorithm. Third, the signal quality score will be compared with the set signal water level to generate different feedback to adjust the sender's scheduling strategy.

[0059] In order to enable the reliability-aware scheduling module to manage and schedule reliable and unreliable data in a more fine-grained manner, the present invention designs two data structures: (1) A vector array is used to store reliable data. The reliable data stored in it is regarded as individual abstract blocks for scheduling. Blocks that are not sent in one scheduling will be put back into the vector array and wait for the next scheduling. This structure is called a reliable queue (RQ). (2) A bidirectional linked list is used to store unreliable data, which are regarded as a whole stream and sorted in order of deadline. This structure is called an unreliable queue (UQ).

[0060] The scheduling process of the reliability-aware scheduling module for reliable data blocks is as follows: First, by aligning the arrival time of the two paths instead of the sending time, the potential of the faster path can be fully utilized, and a block is allocated on the two paths based on this standard. Second, for the subflows on the two paths, the remaining sending time at the current moment is calculated. If it is less than zero, it means that it has timed out, and the sending of the block will be canceled and removed from the queue. Third, the gap between the current bandwidth and the minimum required bandwidth (that is, the size of the subflow allocated on the path divided by the remaining sending time) is calculated. The smaller the value, the more urgent the sending of the block. If it is less than zero, it means that it cannot be completed under the current bandwidth conditions, and the sending of the block will be postponed. Finally, the weight is determined based on the bandwidth gap and the priority of the data block. Data blocks with high weights are more likely to be scheduled. In addition, in order to avoid unfairness to smaller data blocks, the bandwidth gap is multiplied by the proportion of unsent data in the data block to ensure that the weight of the data block that has sent most of the data is not too low.

[0061] The scheduling process of the reliability-aware scheduling module for unreliable data flows is as follows: during the idle time when the fast path is still sending and the slow path has completed sending, the unreliable data is injected in the order of deadlines to achieve accelerated delivery of unreliable data and avoid mutual blocking with reliable data blocks.

[0062] After receiving the signal water level mechanism feedback from the mobile device, the reliability-aware scheduling module will perform the following operations: When a warning level feedback is received, the allocation of the path will be reduced. When feedback of a link interruption is received, the use of the path will be immediately disabled until feedback of signal strength recovery is received. When only a single path is left, the present invention will continue to calculate the weights to select reliable blocks for transmission. Unreliable data will be scheduled for transmission only when and only when all reliable blocks have been sent. For data that has been sent before deactivation, the present invention adopts deadline-based re-injection. Re-injection will only be performed after normal scheduling.

[0063] like Figure 3 As shown in the figure, it is an architecture diagram of a multi-channel scheduling device based on the QUIC network protocol. Two components are designed: a signal water level mechanism module and a reliability-aware scheduling module.

[0064] See also Figure 1, is the signal water level mechanism module of the present invention, running in the QUIC protocol stack in the mobile device. First, the signal strength indicators of each current path will be obtained from the adapter layer of the wireless network module, and these indicators will be provided as input to the quantization algorithm. If the signal strength index of the path is greater than 1, the quantization algorithm will perform a weighted geometric average on each indicator. The basic signal quality score obtained will be multiplied by the change in the loss rate of the modulation factor, and the modulation factor is a natural exponential function of the change in the loss rate. When there is a high burst loss, the signal strength index is made worse. The final signal quality score output by the quantization algorithm will be compared with the signal water level, and different feedback information will be generated according to different water levels and sent to the transmitter.

[0065] The reliability-aware scheduling module has the following specific process:

[0066] 1) After receiving the signal water level feedback, first determine the current path status. When the feedback is a warning, appropriately reduce the allocable ratio of the path. When the feedback is an interruption, immediately disable the continued scheduling of the path, and re-inject the data packets in transit that have been sent on the path according to the deadline. Those that have expired will be abandoned and re-injected. When the feedback is good, the disabled path will be re-enabled.

[0067] 2) When scheduling reliable data blocks, the distribution ratio of the two paths to complete delivery at the same time is calculated based on the current bandwidth and one-way delay. After that, the remaining time to complete the transmission is calculated on each path. For blocks with no remaining time, the transmission will be cancelled to avoid bandwidth waste. The size allocated on the path divided by the remaining transmission time on the path is the minimum required bandwidth for delivery before the current deadline. Subtract this value from the current bandwidth to get the current bandwidth gap. The smaller the gap, the more urgent the block is to send. When the gap is less than 0, it means that the delivery cannot be completed on time under the current path state, and the scheduling of the block is delayed. Finally, the bandwidth gap, the remaining block size and the priority of the block are comprehensively considered to get the final sending weight. This weight is used to determine the sending order.

[0068] 3) If Figure 2 , and the completion of delivery at the same time generates an idle time on the slow path, which is called a time hole. This is a huge waste of bandwidth resources on the slow path. Therefore, for unreliable stream data, the present invention injects it into this time hole according to the deadline.

[0069] In general, the signal water level mechanism compensates for the sender's poor perception of signal changes by quickly feeding back the wireless link status of mobile devices, effectively reducing the occurrence of sustained high burst loss. Reliability-aware scheduling adjusts scheduling decisions based on feedback, ensuring the delivery rate of reliable data while ensuring that unreliable data is not treated unfairly. Through this coordinated scheduling, the mutual blocking problem between the two during burst loss is further reduced, further accelerating delivery.

[0070] The present invention requires two types of overhead: memory and computational overhead. Memory overhead includes the need to maintain send queues, such as RQ and UQ. The present invention reuses the data structure in the QUIC protocol stack to minimize the need to open up new memory space. Therefore, the memory overhead cost is very small and can be ignored. The computational overhead comes from the scheduling and quantization algorithms. Since the scheduling only needs to compare the metadata of each block, and the algorithm itself is simple and efficient, the overhead of the process can be ignored. The quantization algorithm also has very low overhead.

Claims

1. A multi-channel scheduling device based on the QUIC network protocol, characterized in that: include: Signal water level mechanism module: Co-design the QUIC protocol and wireless network module to collect wireless link signal strength; The quality score is calculated through a quantization algorithm; the quality score is compared with the signal level, and different feedback information is generated based on the comparison result and sent to the sending end; Reliability-aware scheduling module: manages and schedules reliable data and unreliable data through a dual-queue data structure; for reliable data, it is mapped as a block unit and placed in a reliable queue RQ; for unreliable data, it is regarded as a stream according to the deadline and placed in an unreliable queue UQ; reliable data blocks calculate the distribution ratio of blocks on fast and slow paths based on the warning and recovery feedback of the signal water level mechanism module, and then determine the sending order of blocks based on the weight algorithm; unreliable data flows are injected during the idle time of the slow path after each reliable data block is sent; after receiving interruption or recovery feedback, the specified path will be disabled or enabled. If it is a disabled path, the in-transit data packets on the path will be re-injected according to the deadline; The signal water level mechanism module works in the QUIC network protocol on the mobile device, and the reliability-aware scheduling module works in the QUIC network protocol on the sender.

2. The multi-channel scheduling device according to claim 1, characterized in that: The reliable data refers to data that has a great impact on the application and must be guaranteed to arrive reliably without loss; the unreliable data refers to data that has a small impact on the application and will not be retransmitted after being lost.

3. The multi-channel scheduling device according to claim 1, characterized in that: Fast and slow paths refer to paths with different round-trip delays. A path with a small round-trip delay is a fast path, and a path with a large round-trip delay is a slow path.

4. The multi-channel scheduling device according to claim 1, characterized in that: The collaborative design of the QUIC protocol and the wireless network module is accomplished by adding an adapter layer to the wireless network module and utilizing lock-free programming, including: In the Java code, a listener is implemented to monitor the signal strength changes of the wireless network module, and an interface for obtaining the signal strength indicator is provided; the interface and the listener are abstracted into an adapter layer; In the C code, a thread dedicated to obtaining the signal strength indicator is implemented. The thread uses the Java Native Interface (JNI) to call the signal strength indicator interface in the Java code. The thread and the QUIC protocol pass various indicators through atomic variables to achieve lock-free programming and reduce the performance impact on the QUIC protocol.

5. The multi-channel scheduling device according to claim 1, characterized in that: The method of calculating the quality score by a quantization algorithm, comparing the quality score with the signal level, generating different feedback information according to the comparison result, and sending it to the transmitting end specifically includes: Since the obtained signal strength indicators have different scales and units, in order to evaluate the path quality consistently, these indicators are normalized to a standard interval (0,1); the weighted geometric mean is used to integrate the normalized indicators to obtain the basic signal quality score; The basic signal quality score Q base : Where SINR norm and RSRP norm is the normalized signal strength index, w sinr and w rsrp It is an adjustable weight in the interval [0,1], which is used to adjust the importance of the indicator to the score change. If any indicator is too low, the overall score will be reduced; Introducing a modulation factor based on packet loss trends to further adjust the calculation of the signal quality score; a sudden increase in the loss rate indicates an escalation of instability, so a downward adjustment is necessary; conversely, the quality score will not improve, because a temporary reduction in loss does not ensure recovery; The modulation factor based on the packet loss trend is denoted as H(Δloss): Where Δloss is the change in loss rate, exp is a natural exponential function, and γ is in the range of 0 to 1, which controls the sensitivity to the increase in loss. When the loss increases, the larger γ is, the worse the quality is, and vice versa, it will reduce the impact of the increase in loss on the quality score; Multiplying the basic signal quality score by the modulation factor to obtain a final signal quality score; The signal quality score is recorded as Q: Q=Q base ×H(Δloss); The quality score is compared with three water levels: good, warning, and interruption. If the value of the quality score is lower than the "warning" water level, a warning feedback is generated, which carries the difference between the current score value and the "warning" water level. If it is lower than the "interruption" water level, an interruption feedback is generated, instructing the sender to stop scheduling on the path. When the value of the score exceeds the "warning" water level, whether to generate recovery feedback will be considered according to the timing threshold method. The feedback will be sent to the sender.

6. The multi-channel scheduling device according to claim 5, characterized in that: The method of considering whether to generate recovery feedback according to a timing threshold method includes: When the score recovers from "interruption" to "good" or above, recovery feedback is immediately issued; if the score only rises to between "interruption" and "warning", no action is taken; when the score exceeds "warning", the timer starts counting; only when the score remains above "warning" and the timer exceeds the critical time T rec Recovery feedback is generated only when the timer is reset; otherwise, the timer is reset.

7. The multi-channel scheduling device according to claim 1, characterized in that: The dual queue is composed of queues abstracted from two different data structures, namely, a reliable data block queue RQ and an unreliable data stream queue UQ; RQ is a vector array used to store reliable data; the reliable data stored therein is regarded as each abstract block for scheduling, and the blocks that are not sent in one scheduling will be put back into RQ and wait for the next scheduling; UQ is a bidirectional linked list used to store unreliable data, which is regarded as a whole stream and sorted in order of deadline.

8. The multi-channel scheduling device according to claim 1, characterized in that: The reliable data block calculates the distribution ratio of blocks on the fast and slow paths based on the warning and recovery feedback of the signal water level mechanism module, and then determines the sending order of the blocks based on the weight algorithm, specifically including: Path allocation is performed based on the principle that block data on two paths arrive at the same time. After receiving warning feedback, the path bandwidth is dynamically adjusted according to the feedback to reduce the allocation amount on the path. The simultaneous arrival path allocation equation is recorded as: Where size1 and size2 are the amount of data to be allocated on the two paths, bw agg is the total bandwidth of the two paths, bw1 and bw2 are the bandwidths of the two paths, OWD1 and OWD2 are the one-way delays of the two paths, F1 and F2 are determined by the warning feedback received on the two paths. The more serious the warning feedback is, the closer the value is to 0. If recovery feedback is received, the value is reset to 1. Based on the amount of data allocated on the path, the remaining sending time on the path is further calculated. The remaining transmission time of path i is Trsd i : Trsd i =deadline i -T psd i -OWD i The deadline i is the data cutoff date, Tpsd i is the time that has passed; if Trsd i If it is less than 0, it proves that the data cannot be delivered before the deadline. The block sending operation is canceled and removed from the RQ. Based on the remaining sending time, the gap between the current bandwidth and the minimum required bandwidth is further calculated. The difference between the current bandwidth and the minimum required bandwidth is recorded as Gbw: Among them Cbw i is the current bandwidth of path i, size i is the size of data allocated on the path; Gbw is equal to the smaller value calculated from the two paths; the smaller the Gbw value, the more urgent the data block; if Gbw is less than zero, it means that the data cannot be delivered within the remaining time under the current path conditions; the weight value is determined based on the bandwidth gap and block priority; Let the weight value be weight: Among them, α is the importance parameter used to adjust the two in the weight calculation, R is the ratio of unsent data in the block, ensuring that the block with most of the data sent gets a lower weight value, that is, a higher sending priority, and P max is the maximum priority value, used for normalization, priority is the priority of the block; the blocks are sent in order from small to large weight values.

9. The multi-channel scheduling device according to claim 1, characterized in that: The unreliable data stream is injected during the idle time of the slow path after each reliable data block is sent, specifically including: Unreliable data on UQ is managed as a data stream sorted by deadline, with a weight set higher than the maximum priority value P max To make a distinction; during the slow path idle time, UQ data is injected into the slow path.

10. The multi-channel scheduling device according to claim 1, characterized in that: After receiving the interruption or recovery feedback, the specified path will be disabled or enabled. If it is a disabled path, the in-transit data packets on the path will be re-injected with a deadline, which specifically includes: After receiving feedback from the signal water level mechanism module, if the feedback received is an interruption, the path will be immediately disabled for continued scheduling; for the sent data packets on the disabled path, after a round of scheduling is completed, they will be tried to be re-injected on another path in the order of deadlines; if the deadline has expired, the re-injection of the packet will be abandoned; re-injection is only for reliable data and will not be performed for unreliable data; if the disabled path receives recovery feedback, the path will be re-enabled.

Citation Information

Cited By

  • Micro-thread management system and method based on Java

    CN120743540A