Next Article in Journal
A Framework for Integrating Log-Structured Merge-Trees and Key–Value Separation in Tiered Storage
Previous Article in Journal
Optimization of Artificial Intelligence Algorithm Selection: PIPRECIA-S Model and Multi-Criteria Analysis
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

LDMP-FEC: A Real-Time Low-Latency Scheduling Algorithm for Video Transmission in Heterogeneous Networks

College of Physics and Information Engineering, Fuzhou University, Fuzhou 350108, China
*
Author to whom correspondence should be addressed.
Electronics 2025, 14(3), 563; https://doi.org/10.3390/electronics14030563
Submission received: 30 December 2024 / Revised: 24 January 2025 / Accepted: 27 January 2025 / Published: 30 January 2025
(This article belongs to the Section Networks)

Abstract

:
With the rapid development of mobile networks and devices, real-time video transmission has become increasingly important worldwide. Constrained by the bandwidth limitations of single networks, extensive research has shifted towards video transmission in multi-network environments. However, differences in bandwidth and latency in heterogeneous networks (such as LTE and Wi-Fi) lead to high latency and packet loss issues, severely affecting video quality and user experience. This paper proposes a Forward Error Correction (FEC)-based Low-Delay Multipath Scheduling algorithm (LDMP-FEC). This algorithm combines the Gilbert model with a continuous Markov chain to adaptively adjust FEC redundancy, thereby enhancing data integrity. Through the FEC Recovery Priority Scheduling (FEC-RPS) algorithm, it dynamically optimizes the transmission order of data packets, reducing the number of out-of-order packets (OFO-packets) and end-to-end latency. Experimental results show that LDMP-FEC significantly reduces the number of out-of-order packets in heterogeneous network environments, improving performance by 50% compared to the round-robin and MinRtt algorithms, while maintaining end-to-end latency within 150 ms. Under various packet loss conditions, LDMP-FEC sustains a playable frame rate (PFR) above 90% and a Peak Signal-to-Noise Ratio (PSNR) exceeding 35 dB, providing an efficient and reliable solution for real-time video and other low-latency applications.

1. Introduction

With the widespread adoption of mobile networks and mobile devices, live video streaming has become increasingly popular worldwide. Ensuring stable and reliable video streaming services has become a critical challenge. The primary constraints for real-time video transmission are network bandwidth and packet loss. The limited bandwidth provided by a single network is often insufficient to effectively support the transmission of high-bitrate videos. Thanks to advancements in mobile devices, modern smartphones and computers can simultaneously utilize 4G networks and Wi-Fi, providing a foundation for transmitting higher-quality videos. However, due to significant differences in network characteristics such as latency and bandwidth between 4G and Wi-Fi, these heterogeneous networks struggle to deliver low-latency, high-quality video services. As a result, in recent years, multi-stream video transmission using multiple access links has been extensively researched. For instance, EVOLUTE implements a full-IP network infrastructure aimed at providing seamless multimedia services for roaming users [1]. It attempts to address the ubiquitous service provision challenges in heterogeneous environments [2]. Additionally, efforts have been made to apply the high-bandwidth characteristics of heterogeneous networks to drones, leading to the development of the ETF algorithm, which explores fast and resource-efficient drone transitions to enable aerial video group communication while maintaining high group communication performance. MPDASH [3,4,5] introduced a deadline-sensitive multipath scheduler [5] within Dynamic Adaptive Streaming HTTP (DASH) to optimize video transmission. However, it is only suitable for stable network environments, and its performance significantly degrades in mobile networks. Some researchers have explored the use of deep reinforcement learning (DRL) to predict network coding, as seen in studies [6,7,8,9,10], leading to several DRL-based solutions such as Meta-DAMS [11] and DRL360 [12]. However, these methods focus on solving packet scheduling issues and fail to address packet loss during actual transmission. For example, GaDam [13] and Peekaboo [14] leverage reinforcement learning to control the scheduling of data streams across different subflows. Yet, when packet loss occurs, these methods lack effective mechanisms for data recovery, which severely impacts the video reconstruction quality at the receiver. Heterogeneous networks typically consist of a combination of 4G and Wi-Fi, as illustrated in Figure 1. Due to the wireless environment, partial data loss frequently occurs, and significant network jitter greatly affects video transmission quality. The aforementioned methods fail to effectively address these challenges.
In addition to the aforementioned applications of heterogeneous networks for transmission, some researchers have explored the use of Forward Error Correction (FEC) to protect data transmission, thereby addressing the issue of packet loss in channels [4,15,16,17]. However, most of these studies focus on integrating FEC encoding with video bitrates, and their scope is largely confined to homogeneous networks with minor variations. In highly heterogeneous networks, these solutions often emphasize maintaining video quality rather than ensuring transmission latency, overlooking the significant number of out-of-order packets (OFO-packets) generated during transmission. Some researchers have begun to utilize Multipath TCP (MPTCP) to enhance mobile video quality. However, directly employing MPTCP does not always guarantee satisfactory transmission performance, especially in heterogeneous networks. This is primarily because MPTCP struggles to provide low-latency transmission services for latency-sensitive applications in such environments, as it cannot effectively address the issue of OFO-packets [15].
To enable MPTCP to deliver low-latency transmissions, numerous scheduling methods have been proposed to reduce OFO-packets caused by network path asymmetry. The fundamental approach of these methods involves estimating the arrival time of packets based on current network conditions and subsequently scheduling packet transmissions based on these estimated arrival times rather than their inherent sequence numbers [18,19,20]. However, the issue of OFO-packets persists in practical applications because existing schedulers may not perform well in mobile networks characterized by significant jitter. In some cases, even well-designed schedulers perform worse than simple round-robin schedulers [21].
Furthermore, since real-time video transmission demands stringent real-time performance, and MPTCP is fundamentally based on TCP, alternative approaches should consider using UDP in combination with FEC for data transmission to better meet real-time performance requirements.
To address the aforementioned issues of packet loss and OFO-packets, we propose a Forward Error Correction (FEC)-based Low-Delay Multipath Scheduling algorithm (LDMP-FEC). The core of this method involves using FEC encoding to protect data integrity based on the current network environment and adaptively adjusting FEC redundancy through the Gilbert model and continuous Markov chains. Subsequently, for the generated encoding groups, the proposed FEC Recovery Priority Scheduling (FEC-RPS) algorithm is employed to schedule data packet transmissions, with the primary objective of recovering FEC encoding groups in the shortest possible time.
The fundamental idea is to calculate the estimated arrival delay intervals for different subflows. When these intervals overlap, the packet sending order is adjusted from the minimum Round-Trip Time (MinRTT) method to round-robin scheduling, ensuring that packets sent within adjacent time frames arrive simultaneously. This approach allows FEC decoding to recover lost or delayed packets at the fastest possible speed.
To evaluate the proposed method, we constructed a UDP-based transmission platform and compared LDMP-FEC with existing algorithms. The results indicate that the LDMP-FEC algorithm significantly reduces the number of out-of-order packets in heterogeneous network environments, improving performance by 50% compared to the round-robin and MinRTT algorithms. Additionally, it enhances video transmission quality by ensuring that end-to-end latency remains within 150ms and maintaining a playable frame rate (PFR) above 90% and a Peak Signal-to-Noise Ratio (PSNR) exceeding 35dB across various packet loss scenarios. This provides an efficient and reliable solution for real-time video and other low-latency applications:
  • Proposing the LDMP-FEC algorithm to ensure video transmission quality in heterogeneous networks: This is achieved by using FEC encoding to protect transmitted data and adaptively deriving FEC redundancy based on the Gilbert model and continuous Markov chains to counteract packet loss in the channel.
  • Modeling and deriving the expected arrival time intervals of data packets on each subflow based on current channel conditions: When the arrival time intervals of subflows do not overlap, data are sent through the shortest subflow. When intervals overlap, the scheduling algorithm switches to round-robin scheduling to ensure that data packets can arrive at the receiver end simultaneously within the shortest possible time for FEC decoding. This reduces waiting times and lowers the end-to-end latency of the video transmission.

2. Causes of OFO-Packets and the FEC Mechanism

In real-time video transmission, the original data packets are encoded in groups, and the receiver must receive the entire group of packets to perform complete decoding. However, due to significant latency differences in heterogeneous networks, the order in which packets arrive via multiple paths often does not match the order in which they were sent. To accommodate OFO-packets, the receiver requires a large buffer to hold the incoming data, which inevitably introduces greater end-to-end latency.
As shown in Figure 2, after grouping the original video data packets, they are scheduled to two different subflows. S u b f l o w # 1 has a lower RTT, allowing packets to arrive quickly. In contrast, S u b f l o w # 2 experiences a higher RTT during transmission and is accompanied by a certain degree of packet loss. In this scenario, the receiver must wait for the packets from S u b f l o w # 2 to arrive before delivering the data to the upper-layer application.
However, due to the partial packet loss in S u b f l o w # 2 , it is impossible for the receiver to obtain a complete set of data. When the waiting time exceeds the maximum threshold, incomplete data are forcibly delivered to the upper-layer decoder, resulting in errors in video frame decoding. This leads to visual artifacts such as screen tearing, increased latency, and stuttering in video playback. To address this issue, the current mainstream solution is to employ FEC to reduce latency and protect data packets. The mechanism of FEC operates as follows.
As shown in Figure 3, the receiver has already received data packets numbered 1 to 4 and only needs to receive two additional packets to perform decoding. In the figure, data packet 5 experiences delays due to channel congestion, and data packet 6 is lost. Without FEC protection, it would be impossible to receive the complete set of data. However, because two redundant packets, 7 and 8, were generated using FEC before transmission, when these two repair packets arrive, the receiver can perform FEC decoding to directly recover lost data packet 6 without waiting for data packet 5. This demonstrates that using FEC to protect real-time video transmission is highly effective.

3. Low Delay Multipath FEC (LDMP-FEC) Scheme

3.1. System Overview

To address the aforementioned issues, we propose a multipath video transmission model based on FEC, which utilizes FEC technology to recover lost data during transmission. Additionally, we introduce a multipath data scheduling algorithm, FEC-RPS, that prioritizes FEC recovery at the receiver end. This ensures that video frames are recovered at the receiver in the shortest possible time, thereby reducing video transmission latency.
Figure 4 illustrates the data transmission model of the entire video transmission system. At the sender side, the video application captures raw uncompressed video streams through a camera and compresses them using an H.264 encoder. The compressed video is then segmented into fixed-size data packets, which are placed into the video buffer. The encoding unit takes a fixed number of data packets each time for FEC encoding, with the FEC redundancy allocated by the parameter control unit. The appropriate redundancy level is selected based on the set target recovery rate. The FEC-encoded packets, along with the original data packets, are then moved to the sending buffer. The path scheduler dynamically selects suitable subpaths for transmission based on the current network conditions, ensuring that the data packets reach the receiver in the shortest possible time.
At the receiver side, each subflow independently receives its respective data packets, which are then grouped and merged before being placed into the receiving buffer awaiting FEC decoding. Simultaneously, the receiver sends feedback information to the sender to update the FEC encoding parameters. The original video data, after FEC decoding, is placed into the video decoding queue buffer, waiting to be decoded and played back.

3.2. FEC Encoding

In our model, we adopt RaptorQ codes as the FEC encoding scheme. RaptorQ [22] is a type of fountain code, and compared to traditional FEC schemes, the most important characteristic of fountain codes is that they are rateless—the number of generated redundant packets is not fixed. In other words, the sender can dynamically adjust the number of encoded data packets based on network conditions, providing a better recovery rate and better adapting to fluctuating network environments. As shown in Figure 5, for the generated video sequence in our work, we employ GoP-level FEC encoding to protect the data. Specifically, during each FEC encoding process, data frames within a video GoP are segmented into data packets of equal size S. For the last data packet, zero padding is applied if necessary to ensure its size reaches S.
The segmented data packets are then placed into the sending buffer. The FEC encoding module extracts a fixed number K of original data packets and encodes them to generate N data packets, where ( N K ) represents redundant packets, denoted as F E C ( N , K ) . The sender executes the scheduling algorithm to transmit all N data packets across different subflows. After transmission through lossy channels, the receiver’s subflows receive and merge the data. For groups with some lost data packets, as long as the number of received packets is greater than or equal to K, the receiver can directly recover the missing data, ensuring data integrity. In static networks, FEC schemes typically use a fixed redundancy level for encoding. However, in heterogeneous networks, multiple paths exist with varying packet loss rates and latencies on each path, making fixed redundancy unsuitable. Therefore, we propose an adaptive FEC redundancy algorithm tailored for multipath environments.

3.3. FEC Adaptive Redundancy Algorithm

In the process of real-time video transmission, two types of packet loss are primarily considered: one is the transmission packet loss rate μ p t , which occurs during data transmission; the other is the active out-of-time packet loss rate μ p o , which applies to data packets that exceed their permissible time limit to ensure smooth video streaming at the receiving end. Therefore, for a specific subflow, its actual packet loss rate μ p can be expressed as follows:
μ p = μ p t + ( 1 μ p t ) · μ p o
We define the actual packet loss rate of the entire transmission process as P. It only needs to satisfy P N K N , where the receiving end can recover all lost data. At this time, the actual packet loss rate can be directly regarded as 0. Otherwise, the actual packet loss rate P can be considered as follows:
p = 1 J R p · μ p p = 1 J R p
Therefore, the actual packet loss rate P for the entire transmission process can be expressed as follows:
P = 0 , if p = 1 J R p · μ p p = 1 J R p N K N , p = 1 J R p · μ p p = 1 J R p , otherwise .
Here, R p represents the data transmission rate on this path, and J represents the number of paths. The selected transmission model for the channel is the Gilbert model, where the transmission process satisfies the continuous Markov chain. Now, we use the following equation to represent the transmission packet loss rate μ p t of a path:
μ p t = 1 n p c p V c p L ( c p ) · Π ( c p )
Here, c p represents a specific n p -tuple configuration during transmission, indicating any possible transmission result, where n p is the total number of transmitted packets. L ( c p ) represents the number of FEC data packets lost in the given c p . The specific expression of L ( c p ) is as follows:
L ( c p ) = i = 1 n p 1 { c p i = B }
Let Π ( c p ) represent the failure probability of the n p -tuple configuration. Based on the continuous-time Gilbert loss model, Π ( c p ) is derived using the product of state transition probabilities. We use the symbol F p i , j ( θ p ) to represent the transition probability of path p from state i to state j over a time interval θ p , which is expressed as follows:
F p i , j ( θ p ) = Π [ X p ( θ p ) = j X p ( 0 ) = i ]
Based on the properties of the continuous-time Markov chain, we can obtain the following state transition matrix:
F p G , G ( θ p ) F p G , B ( θ p ) F p B , G ( θ p ) F p B , B ( θ p ) = μ p G + μ p B · k p μ p B μ p B · k p μ p G μ p G · k p μ p B + μ p G · k p
Here, k p = e ( ξ p B + ξ p G ) · θ p . Now, assuming that the time intervals of data packets are the same, we can calculate Π ( c p ) . For n p = 3 , taking c p 3 = B c p 2 = B c p 1 = G as an example, we have the following:
Π [ c p 3 = B c p 2 = B c p 1 = G ] = μ p G · F p G , B ( θ p 1 ) · F p B , B ( θ p 2 )
Here, θ p i represents the time interval of a single data packet. By induction, Π ( c p ) can be expressed as follows:
Π ( c p ) = μ p c p 1 · i = 1 n p 1 F p c p i , c p i + 1 ( θ p )
Finally, the transmission delay can be expressed as follows: The transmission packet loss rate μ p t can be expressed as follows:
μ p t = 1 n p c p L ( c p ) · Π ( c p ) = 1 n p c p L ( c p ) · i = 1 n p 1 F p c p i , c p i + 1 ( θ p )
Next, to derive the out-of-time packet loss, based on the statistical results from [23,24], the network end-to-end packet delay can be modeled using an exponential distribution:
μ p o = P [ E ( d p e ) > T ] exp T E ( d p e )
Here, E ( d p e ) represents the expected end-to-end delay along the path, and d p e can be expressed as the sum of propagation delay d p p o and transmission delay d p t r , i.e.,
d p e = d p t r + d p p o
In cases where the RTT of the path is asymmetric, the propagation delay d p p o can be approximated as RTT p 2 . The transmission delay can be represented as the ratio of the number of bytes to be sent L p to the bandwidth B p :
d p t r = L p B p
Finally, the out-of-time packet loss rate for path p can be expressed as follows:
μ p o exp T E ( d p t r ) + E ( d p p o )
Therefore, we can calculate the actual packet loss rate μ p for all paths, and from that, the actual packet loss rate P for the entire transmission process can be calculated. As long as FEC redundancy α satisfies P α , an appropriate FEC redundancy can be obtained.

3.4. FEC Recovery Priority Scheduling (FEC-RPS) Algorithm

Using FEC encoding can effectively resist packet loss during transmission. However, when the delay jitter is too large, a severe OFO-packet issue may occur. How to reasonably schedule the encoded packets is also a crucial consideration. To mitigate problems such as the delay caused by the disorder of retransmitted packets, we propose a scheduling algorithm that ensures prioritized FEC recovery, called FEC Recovery Prioritized Scheduling (FEC-RPS).
Simply put, the FEC-RPS algorithm considers the FEC recovery characteristics, ensuring that FEC packets are decoded at the receiver in the shortest possible time to reduce the waiting time on the receiving end.
To reduce OFO-packets, the FEC-RPS algorithm is designed to prioritize the subflow with the shortest RTT for transmitting packets. Based on the RTT, FEC-RPS calculates the expected arrival time of packets on each subflow. This is a common method in other scheduling algorithms. In addition, when calculating the expected arrival time, it also takes into account network jitter. Instead of predicting the arrival time of every subflow using a precise value, which is impractical due to the real-time changing nature of networks, the expected arrival time is calculated as an interval T. This interval’s minimum value should be the smallest RTT among all subflows, and the maximum value considers network jitter, representing the largest expected RTT at the receiver.
For subflows i and j, their respective time intervals are T i and T j . When the upper bound of T i is less than the lower bound of T j , that is, T i T j = , the subflow with the shortest delay should be i. However, when T i and T j overlap, that is, T i T j , it becomes more challenging to select an appropriate subflow for transmission.
When the time intervals of two subflows overlap, to ensure that the FEC blocks can meet decoding conditions in the shortest time, FEC-RPS will transmit data in a round-robin manner among the overlapping subflows. Overlapping arrival times imply that multiple subflows are expected to reach the receiver at approximately the same time. At this point, the scheduling method switches to round-robin scheduling until the time intervals of the two subflows no longer overlap. This method not only leverages the high throughput of multiple paths but also ensures that the packets from each subflow arrive at the receiver at similar times, reducing waiting times at the receiving end. By prioritizing FEC decoding, data integrity is ensured.
To ensure that the encoded packets arrive at the receiver at approximately the same time, the most important step is to estimate the arrival time of each packet and then schedule them on the path with the shortest arrival time. Define T p as the arrival time on path p, which mainly consists of three components: the transmission delay d p t r , propagation delay d p p o , and queuing delay d p q u . The formula can be expressed as follows:
T p = d p t r + d p p o + d p q u
Previously, we have provided the formulas for transmission delay d p t r and propagation delay d p p o . The queuing delay d p q u is the cumulative delay of the first i 1 packets, which can be expressed as follows:
d p q u = i = 1 k q S · i B p i + RTT p 2
k q represents the total number of packets still waiting in the transmission buffer, and S represents the size of each packet. In real-world networks, network jitter often exists. For jitter evaluation on a subpath, we can use the median instantaneous RTT, denoted as Δ R T T p , to determine it. The arrival time at the receiver T arr can then be expressed as an interval:
T arr = T p , T p + Δ R T T p
With the above theoretical guidance, our FEC-RPS scheduling algorithm operates as follows Algorithm 1.
Algorithm 1 FEC-RPS scheduling algorithm.
Input: Subflow set S; Output: Selected subflows set;
 1:
for each subflow j in S do
 2:
      Calculate arrival time interval;
 3:
       T j = [ T p i , T p i + Δ R T T p ] ;
 4:
end for
 5:
Find subflows with minimal arrival time T min ;
 6:
m i n _ s u b f l o w s subflows with T min ;
 7:
s e l e c t _ p a t h s s e l e c t _ p a t h s + m i n _ s u b f l o w s ;
 8:
for each subflow j in S and j m i n _ s u b f l o w s  do
 9:
      if  T j T min  then
10:
            s e l e c t _ p a t h s s e l e c t _ p a t h s + s u b f l o w j ;
11:
    end if
12:
end for
13:
return  s e l e c t _ p a t h s ;
The algorithm starts by scheduling packets on the subflow with the earliest T arr . If T i T j = , the subflow continues to transmit packets during the scheduling process, and its queuing delay d p q u keeps increasing. When T arr overlaps with other subflows, the scheduling method switches to round-robin scheduling. At this point, packets are transmitted alternately across the subflows.
Since all transmitted packets undergo FEC encoding, even if packets from a certain subflow experience delays or loss, other subflows can still ensure that the same group of packets arrive at the receiver at approximately the same time.
When the receiver meets the FEC decoding conditions, it can directly decode and recover lost or delayed packets without waiting for retransmission. The detailed scheduling process is shown in Figure 6.

3.5. System Overview

In this section, we introduce the complete process of LDMP-FEC:
The comprehensive process of LDMP-FEC is presented in Algorithm 2. At the beginning of the program, the K original data packets are retrieved from the buffer that has already been segmented into data packets. These data packets are then encoded using an adaptive redundancy algorithm, which determines the appropriate level of redundancy, resulting in the generation of N data packets. All generated packets are subsequently placed into the sending buffer.
Algorithm 2 LDMP-FEC algorithm.
Input: videoDataBuffer, subflow set S
Output: Selected subflow to send packets
 1:
while True do
 2:
      Update R T T p , B p for each subflow through ACKs;
 3:
      Retrieve K packets from videoDataBuffer;
 4:
      Calculate the redundancy α based on Equations (1)–(14);
 5:
       f e c _ d a t a s F E C ( N , K ) where N = ( 1 + α ) · K ;
 6:
       s e l e c t _ p a t h s _ s e t F E C _ R P S (Algorithm 1);
 7:
      for each packet in f e c _ d a t a s  do
 8:
            if  len ( s e l e c t _ p a t h s _ s e t ) == 1 then
 9:
                c h o o s e _ p a t h s e l e c t _ p a t h s _ s e t [ 0 ] ;
10:
            else
11:
                c h o o s e _ p a t h Select a subflow from s e l e c t _ p a t h s _ s e t
             that has not been chosen before;
12:
            end if
13:
            Send_data( c h o o s e _ p a t h , packet);
14:
    end for
15:
end while
The scheduling algorithm calculates the estimated arrival delay intervals for each subflow corresponding to every packet awaiting transmission. It then assesses whether the selected subflow’s arrival delay interval overlaps with those of other subflows. If there is no overlap, the subflow is designated as the shortest RTT subflow for sending the packet. However, if an overlap is detected, the scheduling algorithm switches to a round-robin scheduling approach, distributing packets sequentially across the available subflows.
Throughout the transmission process, the algorithm continuously monitors the number of bytes sent on each subflow and receives channel feedback from the receiver. This feedback includes metrics such as RTT, packet loss rate, and available bandwidth. These metrics are used to prepare and optimize the transmission of subsequent datasets, ensuring efficient and reliable video streaming.

4. Experiments and Results

4.1. Experimental Setup

To simulate the process of multipath transmission in heterogeneous networks, we constructed the topology illustrated in Figure 7, deploying the sender and receiver on two separate Ubuntu 18.04 servers. The experiment simulated two transmission paths: one using a 4G network and the other a Wi-Fi network. The receiver was equipped with two 100 Mbps wired network interfaces to simultaneously receive data from multiple paths. The network environment was emulated using the HoloWan network emulator. For video transmission, we utilized the FFmpeg tool to encode the same video sequence, “Highway”, using H.264 encoding, thereby simulating video streaming. For comparative analysis, we set up three scenarios:
  • MinRtt-FEC: Combines FEC for data protection with the MinRtt scheduling algorithm, with FEC redundancy ( α ) set to 10%.
  • MinRtt: Employs the MinRtt scheduling algorithm without FEC encoding.
  • Round-robin-FEC: Combines FEC for data protection with the round-robin scheduling algorithm, with FEC redundancy ( α ) set to 10%.
  • Round-robin: Employs the round-robin scheduling algorithm without FEC encoding.
  • FEC-RPS: Utilizes the FEC-RPS algorithm independently to evaluate its performance without FEC data protection.
Additionally, to explore the performance of the FEC-RPS algorithm when FEC is not used for data protection, we included FEC-RPS in the comparative experiments. In all subsequent experiments, the server uses FFmpeg to provide a video stream with a bitrate of 8 Mbps. The bandwidth of each subflow is set to 5 Mbps, indicating that neither subflow alone can meet the transmission requirements of the video stream. Aggregating both subflows is necessary to provide sufficient bandwidth for data transmission, highlighting the necessity of multipath utilization.

4.2. The Operation Status of Each Subflow

To illustrate the details of the LDMP-FEC algorithm, we first validated its actual operational performance. We configured P a t h # 1 with an RTT of 20 ms to simulate a relatively stable channel in a real-world environment. P a t h # 2 was used to simulate a less stable network environment with packet loss and latency, setting its RTT to 100 ms, accompanied by network jitter with a maximum value of 10%. The instantaneous throughput of each subflow was recorded.
As shown in the Figure 8, at the beginning, the RTT difference between P a t h # 1 and P a t h # 2 was significant, and LDMP-FEC primarily scheduled data on the lower-latency P a t h # 1 . At the 30 ms mark, network jitter occurred, and LDMP-FEC calculated that the arrival times for both paths at the receiver were similar. At this point, the algorithm switched to a round-robin approach, scheduling data packets equally across both paths. Data packets were transmitted evenly over both subflows.
After 20 s of jitter, the network conditions began to stabilize, and LDMP-FEC switched back to the MinRTT scheduling method, prioritizing P a t h # 1 for data scheduling. This describes the operational behavior of LDMP-FEC in a real-world scenario.

4.3. Out-of-Order Queue Size

In this experiment, we explore the effectiveness of LDMP-FEC in reducing OFO-FEC. For the RTT settings, P a t h # 1 ’s RTT is configured to 20 ms. P a t h # 2 is used to simulate a poorer network environment, with a packet loss rate of 2%, and its RTT is varied from 20 ms to 160 ms to fully demonstrate LDMP-FEC’s performance under heterogeneous networks with different latency gaps.
As shown in Figure 9, due to packet loss in the channel, the FEC-RPS, MinRTT, and round-robin algorithms all perform suboptimally. However, the OFO-packet size caused by FEC-RPS is generally smaller than that of the round-robin and MinRTT algorithms. This is because the round-robin algorithm evenly distributes packets across both paths, resulting in significantly more packets being allocated to P a t h # 2 compared to FEC-RPS. On the other hand, the MinRTT algorithm continuously transmits data through the path with the shortest RTT, even if the subflow is congested, continuously scheduling data to that subflow. In contrast, the FEC-RPS algorithm prioritizes scheduling data through queues with lower latency and available capacity, significantly reducing the packet loss rate and the size of OFO-packets.
When FEC is used for data protection, it can be observed that FEC significantly reduces the number of OFO-packets. This is because the receiver can directly decode the packets to recover lost or delayed data without indefinitely waiting for delayed packets to arrive. Regarding redundancy, LDMP-FEC uses an adaptive redundancy algorithm, while round-robin-FEC and MinRTT use fixed redundancy of 10%. Although the redundancy levels of the latter two are sufficient to counter channel packet loss, LDMP-FEC benefits from the scheduling approach of FEC-RPS, which prioritizes high-quality channels for transmission. This allows the receiver to quickly decode the received data and recover lost or delayed packets, significantly reducing the size of OFO-packets. Therefore, compared to the other schemes, the LDMP-FEC approach demonstrates remarkable effectiveness in reducing OFO-packets size.

4.4. End-to-End Delay

End-to-end delay represents the total time consumed for a video frame to travel from the sender to the receiver. Higher end-to-end delay indicates longer transmission times for the video frame, causing a greater delay in displaying the frame at the receiver, which results in noticeable visual latency. Therefore, end-to-end delay should be minimized as much as possible within the allowable range.
To explore the performance of the LDMP-FEC scheme in terms of end-to-end delay, we configured the RTT of P a t h # 1 to 20 ms and the RTT of P a t h # 2 to 100 ms. The bandwidth settings were the same as in the previous experiment. The end-to-end delay of video frames was recorded, and Figure 9 shows the CDF (Cumulative Distribution Function) of end-to-end delay for different schemes.
As observed in Figure 10, 90% of the video frames in the LDMP-FEC algorithm achieve an end-to-end delay within 150 ms, while 90% of the end-to-end delays in the round-robin-FEC and MinRTT-FEC algorithms exceed 150 ms. For schemes that do not utilize FEC, such as round-robin, MinRTT, and FEC-RPS, their inability to handle packet loss leads to prolonged waiting for undelivered packets at the receiver. Moreover, since decoding at the receiver occurs sequentially, an undecoded frame blocks the decoding of subsequent frames, even if the subsequent frame has already been fully received. This results in 90% of the video frames experiencing an end-to-end delay exceeding 200 ms.
The turning point at 210 ms in the figure is due to prolonged blocking and waiting for certain packets, which triggers the receiver’s timeout packet loss mechanism. This mechanism discards packets that have been delayed for too long and cannot be decoded, thereby reducing the pressure on the receiver’s buffer.
In summary, the results demonstrate that the LDMP-FEC scheme significantly reduces the end-to-end delay of video transmissions in heterogeneous networks.

4.5. Playable Frame Rate

An important metric for evaluating video transmission quality is the playable frame rate (PFR), which represents the number of video frames that can be decoded and played by the receiver. The more frames the receiver can decode, the smoother the video playback and the better the user experience. However, due to the characteristics of H.264 encoding, when the decoding of a reference frame fails, the entire Group of Pictures (GoP) fails to decode, resulting in a large number of unplayable video frames and severely impacting the PFR.
To investigate the performance of LDMP-FEC under different packet loss scenarios, we configured the RTT of P a t h # 1 to 20 ms and P a t h # 2 to 100 ms, while varying the packet loss rate of P a t h # 2 from 0.02 to 0.1. The results are shown in Figure 11.
As observed in Figure 11, without FEC protection, the PFR of the round-robin, MinRTT, and FEC-RPS algorithms drops significantly. When the packet loss rate reaches 0.1, the PFR is only 50%, making the video almost unwatchable. This is due to extensive reference frame losses at the receiver, causing decoding failures. Without any means of data recovery, video decoding cannot proceed, and a large number of frames are discarded.
In contrast, the round-robin-FEC and MinRTT-FEC algorithms with FEC protection maintain a PFR of over 80%, while LDMP-FEC demonstrates even better performance, consistently achieving a PFR of over 90%. This indicates that LDMP-FEC outperforms round-robin in ensuring effective FEC decoding.

4.6. Peak Signal-to-Noise Ratio

PSNR (Peak Signal-to-Noise Ratio) is an important metric for evaluating video quality. It represents the ratio of the maximum possible signal power to the power of corrupting noise. A higher PSNR indicates better video quality and a better user experience. Furthermore, PSNR can also reflect the degree to which video communication is affected by channel packet loss.
In this experiment, P a t h # 1 ’s RTT was set to 20 ms, P a t h # 2 ’s RTT was set to 100 ms, and the packet loss rate was 2%. To assess overall performance, we compared the LDMP-FEC algorithm, round-robin-FEC algorithm, and MinRTT-FEC algorithm. Figure 11 shows the instantaneous PSNR for frames 1000 to 1350 across the three algorithms.
As illustrated in Figure 12, the overall PSNR of LDMP-FEC consistently remains above 35, with minimal fluctuations and relatively stable performance. In contrast, the round-robin-FEC algorithm with a redundancy level of 10% exhibits more significant fluctuations. This is because round-robin scheduling causes slower FEC decoding, which leads to frame timeout and triggers the timeout packet loss mechanism. The MinRTT-FEC algorithm performs better than the round-robin-FEC algorithm as it prioritizes paths with lower latencies for transmission. However, when the shortest RTT path becomes congested, it continues to transmit data along that path, resulting in a large amount of data waiting to be sent, which negatively impacts video transmission quality. Consequently, its overall PSNR is inferior to that of the LDMP-FEC algorithm.
In summary, in terms of PSNR performance, the LDMP-FEC algorithm demonstrates superior results.

5. Conclusions

When transmitting video over heterogeneous networks using multiple paths, significant disparities between the networks can easily result in a large number of out-of-order packets (OFO-packets) at the receiver, leading to excessive video transmission delays. Additionally, due to channel packet loss and timeout packet loss at the receiver, substantial video data loss causes numerous instances of screen tearing and stuttering at the receiver.
To address these issues, we propose the LDMP-FEC scheme, which provides low-latency, stable, reliable, and high-quality video transmission for real-time video applications and other latency-sensitive applications. To mitigate channel packet loss, LDMP-FEC integrates FEC encoding protection and offers an adaptive FEC redundancy scheme based on channel variations. For the scheduling and transmission of the encoded data, LDMP-FEC sends packets based on the estimated arrival time intervals of each packet rather than striving for precise estimation. When the arrival delays of different subflows are similar, LDMP-FEC switches the scheduling scheme to round-robin, ensuring that data packets arrive simultaneously at the receiver to enable rapid FEC decoding.
Extensive experiments demonstrate that the proposed LDMP-FEC scheme effectively meets the objectives of real-time video transmission over heterogeneous networks. However, there are still limitations. For instance, the current work does not consider highly dynamic network environments such as those in drone flight control or vehicular video communication scenarios. Future work will focus on these areas, incorporating reinforcement learning into the scheme and exploring its deployment in practical, highly dynamic application scenarios.

Author Contributions

Conceptualization, T.G., P.C. and F.C.; methodology, T.G., P.C. and F.C.; software, T.G.; validation, T.G. and F.C.; formal analysis, T.G.; investigation, T.G.; resources, T.G.; data curation, T.G.; writing—original draft preparation, T.G.; writing—review and editing, T.G., P.C. and F.C.; visualization, F.C. and P.C.; supervision, F.C. and P.C.; project administration, T.G. and F.C.; funding acquisition, F.C. and P.C. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Data are contained within the article.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Dagiuklas, T.; Gatzounas, D.; Theofilatos, D.; Sisalem, D.; Rupp, S.; Velentzas, R.; Tafazolli, R.; Politis, C.; Grilli, S.; Kollias, V.; et al. Seamless multimedia services over all-IP based infrastructures: The EVOLUTE approach. In Proceedings of the IST Mobile and Wireless Telecommunications Summit, Thessaloniki, Greece, 16–19 June 2002. [Google Scholar]
  2. Tu, W. Resource-efficient seamless transitions for high-performance multi-hop UAV multicasting. Comput. Netw. 2022, 213, 109051. [Google Scholar] [CrossRef]
  3. Wu, J.; Yuen, C.; Cheng, B.; Wang, M.; Chen, J. Streaming High-Quality Mobile Video with Multipath TCP in Heterogeneous Wireless Networks. IEEE Trans. Mob. Comput. 2016, 15, 2345–2361. [Google Scholar] [CrossRef]
  4. Xing, Y.; Xue, K.; Zhang, Y.; Han, J.; Li, J.; Liu, J.; Li, R. A Low-Latency MPTCP Scheduler for Live Video Streaming in Mobile Networks. IEEE Trans. Wirel. Commun. 2021, 20, 7230–7242. [Google Scholar] [CrossRef]
  5. Han, B.; Ji, L.; Gopalakrishnan, V.; Qian, F. Adaptive Video Streaming over Preference-Aware Multipath. US Patent 10,348,796, 9 July 2019. [Google Scholar]
  6. Stockhammer, T. Dynamic adaptive streaming over HTTP—Standards and design principles. In Proceedings of the Second Annual ACM Conference on Multimedia Systems, San Jose, CA, USA, 23–25 February 2011; pp. 133–144. [Google Scholar]
  7. Xing, M.; Xiang, S.; Cai, L. A real-time adaptive algorithm for video streaming over multiple wireless access networks. IEEE J. Sel. Areas Commun. 2014, 32, 795–805. [Google Scholar] [CrossRef]
  8. Mao, H.; Netravali, R.; Alizadeh, M. Neural adaptive video streaming with pensieve. In Proceedings of the Conference of the ACM Special Interest Group on Data Communication, Los Angeles, CA, USA, 21–25 August 2017; pp. 197–210. [Google Scholar]
  9. Zhang, H.; Li, W.; Gao, S.; Wang, X.; Ye, B. ReLeS: A neural adaptive multipath scheduler based on deep reinforcement learning. In Proceedings of the IEEE INFOCOM 2019-IEEE Conference on Computer Communications, Paris, France, 29 April–2 May 2019; pp. 1648–1656. [Google Scholar]
  10. Guan, Y.; Zhang, Y.; Wang, B.; Bian, K.; Xiong, X.; Song, L. PERM: Neural adaptive video streaming with multi-path transmission. In Proceedings of the IEEE INFOCOM 2020-IEEE Conference on Computer Communications, Toronto, ON, Canada, 6–9 July 2020; pp. 1103–1112. [Google Scholar]
  11. Sepahi, A.; Cai, L.; Yang, W.; Pan, J. Meta-DAMS: Delay-Aware Multipath Scheduler using Hybrid Meta Reinforcement Learning. In Proceedings of the 2023 IEEE 98th Vehicular Technology Conference (VTC2023-Fall), Hong Kong, 10–13 October 2023; pp. 1–5. [Google Scholar]
  12. Zhang, Y.; Zhao, P.; Bian, K.; Liu, Y.; Song, L.; Li, X. DRL360: 360-degree video streaming with deep reinforcement learning. In Proceedings of the IEEE INFOCOM 2019-IEEE Conference on Computer Communications, Paris, France, 29 April–2 May 2019; pp. 1252–1260. [Google Scholar]
  13. Chu, T.T.; Labiod, M.A.; Tran, H.A.; Mellouk, A. GADaM: Generic Adaptive Deep-learning-based Multipath Scheduler Selector for Dynamic Heterogeneous Environment. In Proceedings of the ICC 2022—IEEE International Conference on Communications, Seoul, Republic of Korea, 16–20 May 2022; pp. 4908–4913. [Google Scholar] [CrossRef]
  14. Wu, H.; Alay, Ö.; Brunstrom, A.; Ferlin, S.; Caso, G. Peekaboo: Learning-based multipath scheduling for dynamic heterogeneous environments. IEEE J. Sel. Areas Commun. 2020, 38, 2295–2310. [Google Scholar] [CrossRef]
  15. Cui, Y.; Wang, L.; Wang, X.; Wang, H.; Wang, Y. FMTCP: A fountain code-based multipath transmission control protocol. IEEE/ACM Trans. Netw. 2014, 23, 465–478. [Google Scholar] [CrossRef]
  16. Li, M.; Lukyanenko, A.; Cui, Y. Network coding based multipath TCP. In Proceedings of the 2012 Proceedings IEEE INFOCOM Workshops, Orlando, FL, USA, 25–30 March 2012; pp. 25–30. [Google Scholar]
  17. Chiariotti, F.; Kucera, S.; Zanella, A.; Claussen, H. Analysis and design of a latency control protocol for multi-path data delivery with pre-defined QoS guarantees. IEEE/ACM Trans. Netw. 2019, 27, 1165–1178. [Google Scholar] [CrossRef]
  18. Ferlin, S.; Dreibholz, T.; Alay, Ö. Multi-path transport over heterogeneous wireless networks: Does it really pay off? In Proceedings of the 2014 IEEE Global Communications Conference, Austin, TX, USA, 8–12 December 2014; pp. 4807–4813. [Google Scholar]
  19. Ramachandran, A.; Kantarcioglu, D.M. Using Blockchain and smart contracts for secure data provenance management. arXiv 2017, arXiv:1709.10000. [Google Scholar]
  20. Polese, M.; Chiariotti, F.; Bonetto, E.; Rigotto, F.; Zanella, A.; Zorzi, M. A Survey on Recent Advances in Transport Layer Protocols. IEEE Commun. Surv. Tutorials 2019, 21, 3584–3608. [Google Scholar] [CrossRef]
  21. Wei, W.; Xue, K.; Han, J.; Wei, D.S.L.; Hong, P. Shared Bottleneck-Based Congestion Control and Packet Scheduling for Multipath TCP. IEEE/ACM Trans. Netw. 2020, 28, 653–666. [Google Scholar] [CrossRef]
  22. Lu, Y.P.; Lai, I.W.; Lee, C.H.; Chiueh, T.D. Low-Complexity Decoding for RaptorQ Codes Using a Recursive Matrix Inversion Formula. IEEE Wirel. Commun. Lett. 2014, 3, 217–220. [Google Scholar] [CrossRef]
  23. Zhu, X.; Agrawal, P.; Singh, J.P.; Alpcan, T.; Girod, B. Distributed Rate Allocation Policies for Multihomed Video Streaming Over Heterogeneous Access Networks. IEEE Trans. Multimed. 2009, 11, 752–764. [Google Scholar] [CrossRef]
  24. Zhou, L.; Wang, H.; Lian, S.; Zhang, Y.; Vasilakos, A.V.; Jing, W. Availability-Aware Multimedia Scheduling in Heterogeneous Wireless Networks. IEEE Trans. Veh. Technol. 2011, 60, 1161–1170. [Google Scholar] [CrossRef]
Figure 1. Overview of multipath video transmission in mobile networks.
Figure 1. Overview of multipath video transmission in mobile networks.
Electronics 14 00563 g001
Figure 2. OFO-packets and packet loss caused by path differences in heterogeneous networks.
Figure 2. OFO-packets and packet loss caused by path differences in heterogeneous networks.
Electronics 14 00563 g002
Figure 3. FEC recovery mechanism in multipath, where data packets 1–6 are original data packets and packets 7 and 8 are generated FEC redundant packets.
Figure 3. FEC recovery mechanism in multipath, where data packets 1–6 are original data packets and packets 7 and 8 are generated FEC redundant packets.
Electronics 14 00563 g003
Figure 4. System overview of the proposed LDMP-FEC scheme.
Figure 4. System overview of the proposed LDMP-FEC scheme.
Electronics 14 00563 g004
Figure 5. Video acquisition and FEC encoding.
Figure 5. Video acquisition and FEC encoding.
Electronics 14 00563 g005
Figure 6. In the FEC-RPS algorithm, when arrival times overlap, packets are scheduled in a round-robin manner across the two paths.
Figure 6. In the FEC-RPS algorithm, when arrival times overlap, packets are scheduled in a round-robin manner across the two paths.
Electronics 14 00563 g006
Figure 7. The network topology for performance evaluation.
Figure 7. The network topology for performance evaluation.
Electronics 14 00563 g007
Figure 8. The actual operational performance of each subflow in the LDMP-FEC algorithm.
Figure 8. The actual operational performance of each subflow in the LDMP-FEC algorithm.
Electronics 14 00563 g008
Figure 9. The average size of OFO-packets queue that is created every 0.1 s in static asymmetric networks by different schedulers.
Figure 9. The average size of OFO-packets queue that is created every 0.1 s in static asymmetric networks by different schedulers.
Electronics 14 00563 g009
Figure 10. The time elapsed by packets from the client to server.
Figure 10. The time elapsed by packets from the client to server.
Electronics 14 00563 g010
Figure 11. The video playable frame rate in static asymmetric networks by different schedulers.
Figure 11. The video playable frame rate in static asymmetric networks by different schedulers.
Electronics 14 00563 g011
Figure 12. PSNR of frames 1000 to 1350 of the “HighWay” video under different scheduling methods.
Figure 12. PSNR of frames 1000 to 1350 of the “HighWay” video under different scheduling methods.
Electronics 14 00563 g012
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Gao, T.; Chen, F.; Chen, P. LDMP-FEC: A Real-Time Low-Latency Scheduling Algorithm for Video Transmission in Heterogeneous Networks. Electronics 2025, 14, 563. https://doi.org/10.3390/electronics14030563

AMA Style

Gao T, Chen F, Chen P. LDMP-FEC: A Real-Time Low-Latency Scheduling Algorithm for Video Transmission in Heterogeneous Networks. Electronics. 2025; 14(3):563. https://doi.org/10.3390/electronics14030563

Chicago/Turabian Style

Gao, Tingjin, Feng Chen, and Pingping Chen. 2025. "LDMP-FEC: A Real-Time Low-Latency Scheduling Algorithm for Video Transmission in Heterogeneous Networks" Electronics 14, no. 3: 563. https://doi.org/10.3390/electronics14030563

APA Style

Gao, T., Chen, F., & Chen, P. (2025). LDMP-FEC: A Real-Time Low-Latency Scheduling Algorithm for Video Transmission in Heterogeneous Networks. Electronics, 14(3), 563. https://doi.org/10.3390/electronics14030563

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop