# PDASTSGAT: An STSGAT-Based Multipath Data Scheduling Algorithm
## 1 Introduction  
Given the rapid development of communication and networking technologies, it has become customary for mobile devices to be equipped with multiple network interfaces, which cater to a wide range of network access technologies. Furthermore, in light of emerging technologies such as virtual reality and real-time streaming, there is a growing need among users for enhanced network bandwidth and minimized end-to-end transmission latency. To achieve multi-link transmission, the Internet Engineering Task Force (IETF) has introduced the Multipath TCP (MPTCP) protocol [1; 2]. As an extension of the traditional transmission control protocol (TCP), the MPTCP protocol is compatible with existing network architectures and protocols. It provides the ability to aggregate capacity across multiple links and maintain connectivity in the event of a single path failure. Data scheduling plays a fundamental role in the Multipath TCP protocol [3; 4], as it governs the packet transmission flow and guarantees equitable treatment across various links. In order to enhance both subflow throughput and fairness within the Multipath TCP framework, several conventional scheduling algorithms have been introduced, such as round-robin [5], Fastest-RTT, and Average-RTT [6]. The round-robin algorithm divides the incoming data at the application layer into individual packets and assigns them to available subflows in a round-robin fashion for transmission. The Fastest-RTT algorithm is an extension of the round-robin approach, wherein packet allocation is determined by the ordering of round-trip time (RTT) values associated with each available subflow. This algorithm prioritizes assigning packets to the subflow with the minimum RTT until its congestion window reaches capacity. Subsequently, it continues to allocate packets to the subflow with the next lowest RTT value. Average-RTT, an improvement over Fastest-RTT, assigns packets based on the order of the average RTT of each available subflow, making the packet allocation more intelligent. These packet scheduling strategies frequently exhibit throughput fluctuations in networks with high packet loss rates, thereby leading to a notable escalation in end-to-end latency, even in scenarios characterized by low loss rates. Indeed, in certain heterogeneous multi-link network environments, there are significant differences among various service metrics such as bandwidth, round-trip time (RTT), packet loss rate, and throughput between different links. Each link may have different transmission efficiencies. If MPTCP scheduling strategies do not consider the influence of these complex factors in heterogeneous networks and continue to schedule based on ideal conditions, It can give rise to substantial performance concerns. For instance, in a heterogeneous network environment where packets undergo multiplexing across multiple paths, exhibiting notable latency discrepancies (e.g., WiFi and LTE), improper packet scheduling can give rise to the issue of head-of-line (HOL) blocking [7]. Another example occurs when packets allocated to low-latency paths encounter delays due to the necessity of waiting for packets transmitted over high-latency paths, thereby ensuring ordered delivery. Therefore, it is crucial in the field of network communication to develop appropriate scheduling strategies for MPTCP packets that enhance bandwidth, reduce end-to-end latency, and maximize network resource utilization. Researchers have employed heuristic algorithms to design data scheduling algorithms for heterogeneous network environments. One such algorithm is SB-FPS (subflow-based fair packet scheduling) [8]. SB-FPS allocates data based on the window size variations of each subflow, enabling more accurate scheduling of data in shared bottleneck scenarios. Simulation results and real network tests have demonstrated that SB-FPS outperforms the default MPTCP algorithm, achieving a 6% increase in throughput. Additionally, it has validated the correctness of allocating data packets based on channel conditions.